java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。是java 中的 二元运算instanceof: 1)、类与类: 判断继承的关系,一般使用在强转之前的判断(多态应用时,即多态作为形参时) (子类 instanceof 父类 ) 2)、接口与类:接口可插拔,类都可以instanceof编译 编译看类型,运行找对象,不能通过编译 3)、接口与接口 :存在继承关系不存在编译问题:主要看可能存在多态(运行时)
public class TestDemo { public static void main(String[] args) { TestB b = new TestB(); TestA a = new TestA(); System.out.PRintln("父类 在 子类中:" + (a instanceof TestB));//false System.out.println("子类在父类中:" + (b instanceof TestA));//true System.out.println("TestA 是接口的实例:" + (a instanceof Demo));//true System.out.println("TestB 是接口的实例:" + (b instanceof Demo));//true System.out.println("TestB 是接口的实例:" + (b instanceof Demo1));//false System.out.println("TestB 是接口的实例:" + (b instanceof Demo2));//true }}
新闻热点
疑难解答