java中,子类继承父类并可以使用父类的对象,而且子类也有自己的对象。那为什么说子类的对象即是父类 5
java中,子类继承父类并可以使用父类的对象,而且子类也有自己的对象。那为什么说子类的对象即是父类的对象?明明子类多于父类的对象,子类对象不一定是父类的对象啊。由inst...
java中,子类继承父类并可以使用父类的对象,而且子类也有自己的对象。那为什么说子类的对象即是父类的对象?明明子类多于父类的对象,子类对象不一定是父类的对象啊。由instanceof关键字引起的问题。
展开
1个回答
展开全部
instanceof 的作用是什么?
instanceof通过返回一个布尔值来指出,这个对象是否是这个“特定类”或者是“它的子类”的一个实例。
class A{ }
class B extends A{ }
B b = new B();
这时 b instance of A 的值为true,对吧。
于是你说“明明子类多于父类的对象,子类对象不一定是父类的对象啊。”
定义上怎么说的,“这个对象是否是这个“特定类”或者是“它的子类”的一个实例。”
b 是 A 的什么? b 是 A 的子类的实例?满足不?满足吧,所以是true;
A a = new A();
这时 a instanceof B 值为多少? false。
a 是 B的实例吗?不是。是B的子类的实例吗?更不是了。所以是false。
理解instanceof的时候,不用想你那些什么子类内容比父类多之类的,看看满足条件不,就行了
instanceof通过返回一个布尔值来指出,这个对象是否是这个“特定类”或者是“它的子类”的一个实例。
class A{ }
class B extends A{ }
B b = new B();
这时 b instance of A 的值为true,对吧。
于是你说“明明子类多于父类的对象,子类对象不一定是父类的对象啊。”
定义上怎么说的,“这个对象是否是这个“特定类”或者是“它的子类”的一个实例。”
b 是 A 的什么? b 是 A 的子类的实例?满足不?满足吧,所以是true;
A a = new A();
这时 a instanceof B 值为多少? false。
a 是 B的实例吗?不是。是B的子类的实例吗?更不是了。所以是false。
理解instanceof的时候,不用想你那些什么子类内容比父类多之类的,看看满足条件不,就行了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询