本来上课的时候对instanceof没怎么认真听
以为记住一个不要在equals之外的地方使用就够了
但听了几个大佬的复习讲座后
觉得对instanceof还是应该再深入了解一下
起初我只知道a instanceof b是判断a是否是b及其子类
又知instanceof不是一个方法而是一个操作符
听大佬的讲座得知这种判断是通过强转实现的
就是说尝试将a转换为b
如果成功就返回true,不成功就返回false
为此我特地写了几个有继承关系的类尝试了一下
这里chinesewomanpeople是chinesepeople的子类
chinesepeople是people的子类
结果是第一种强转报错
第二种可以
由此可知
父类不能强转为子类
但子类可以强转为父类
这与任何一个子类对象都是一个父类对象是对应的
还有一个点
instanceof只能用于原始类型,而不能用于泛型类型