Circle circle1 = new Circle();
Circle circle2 = new Circle(1.0);
Circle circle3 = new Circle(2.0,"Black",2.0);
GeometricObject geometricObject = new GeometricObject();
TextCircle textCircle = new TextCircle();
Object c = circle2;
Object c1 = circle3;
Object c3 = geometricObject;
Object c4 = textCircle;
System.out.println(circle2 instanceof Circle);
返回值为true
System.out.println(geometricObject instanceof Circle);
返回值为false,父类对象 instanceof 子类名编译和运行不报错。
System.out.println(textCircle instanceof Circle);
编译出错。
System.out.println(c instanceof Circle);
返回值为true
System.out.println(c1 instanceof Circle);
返回值为true
System.out.println(c3 instanceof Circle);
返回值为false
System.out.println(c4 instanceof Circle);
编译不出错,返回值为false。
○ c,c1,c3,c4是Object类属性,指向其他类对象的一个对象。instanceof操作符会两者都考虑。