Java,子类而非超类的实例
如果我不得不问这个问题,我知道我的程序可能设计得很糟糕。如何确保对象是子类类型而不是子类的父类 例如:Java,子类而非超类的实例,java,Java,如果我不得不问这个问题,我知道我的程序可能设计得很糟糕。如何确保对象是子类类型而不是子类的父类 例如: if (r instanceof subclassRobot) { //method } 如果r是父级,我不希望执行此操作。我只希望在r是子类类型时执行此方法。您可以像这样检查类本身: if(thing instanceof SomeClass.class && !thing.getClass().equals(SomeClass.class)) { // Thi
if (r instanceof subclassRobot) {
//method
}
如果
r
是父级,我不希望执行此操作。我只希望在r
是子类类型时执行此方法。您可以像这样检查类本身:
if(thing instanceof SomeClass.class && !thing.getClass().equals(SomeClass.class))
{
// Thing can be any class that extends SomeClass,
// but will not belong to SomeClass itself.
}
您可以这样检查类本身:
if(thing instanceof SomeClass.class && !thing.getClass().equals(SomeClass.class))
{
// Thing can be any class that extends SomeClass,
// but will not belong to SomeClass itself.
}
绝对好的代码
p是对属于基类族的类族的引用。o
if (r instanceof subclassRobot) {
//...
}
只需检查您是否实际指向SubassRobot的实例就可以了
p是对属于基类族的类族的引用。o
if (r instanceof subclassRobot) {
//...
}
检查您是否实际指向subassrobot