我在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;
}
}
答案 0 :(得分:1)
Drools无法识别无法识别的内容。
如果您的班级Car
有静态方法cast(Vehicle v)
,则应该识别它。 (如果没有这样的方法,你会收到错误。)
class Car extends Vehicle {
public static Car cast( Vehicle v ){ return (Car)v; }
...
}
也许您尝试使用cast
的{{1}}方法?如果是这样,你必须写
java.lang.Class
稍后并且您没有理由不能使用简单的演员:
(Car.class.cast(vehicle)).isManual()