[英]Accessing Child class properties from parent class in drools
我在drools xls文件中傳遞了一個父類Vehicle(),如何訪問子類Car()的屬性?
我已經嘗試過強制轉換,但是它流口水無法識別強制轉換的方法
(Car.cast(vehicle)).isManual()
從OP的評論中laune編輯 :我使用的Drools版本是4.0.7
import workspace.sampleproj.domain.*
function boolean checkIfCarManual(Vehicle vehicle){
if (vehicle.isCar() == true){
if((Car.cast(vehicle).isManual() == true){
return true;
} else {
return false;
}
} else {
return false;
}
}
流口水無法識別無法識別的事物。
如果您的Car
類具有靜態方法cast(Vehicle v)
,則應識別它。 (如果沒有這樣的方法,則會出現錯誤。)
class Car extends Vehicle {
public static Car cast( Vehicle v ){ return (Car)v; }
...
}
也許您嘗試使用java.lang.Class
的cast
方法? 如果是這樣,你必須寫
(Car.class.cast(vehicle)).isManual()
后來 ,沒有理由為什么您不能使用簡單的轉換:
function boolean checkIfCarManual(Vehicle vehicle){
return vehicle.isCar() && ((Car)vehicle).isManual();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.