[英]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.