public static void main(String[] args) { Cat dx = new Cat( "小黄" , "蓝色" );//调用Cat类 } } class Animal { public String name;//设置Animal的成员变量:name Animal(String set_name)//构造方法 { this.name = set_name;//将输入的参数赋给成员变量name } } class Cat extends Animal//Cat继承于Animal { public String eyesColor;//Cat自己的成员变量:eyesColor Cat(String N,String eye)//构造方法 { super(N);//调用Animal的构造方法,将N参数传入 this.eyesColor = eye; System.out.println(this.name); System.out.println(this.eyesColor); } } //最终打印出: 小黄//name 蓝色//eyesColor *1. name是父类的成员变量,eyesColor是子类的成员变量 如果此时new一只Animal对象"A"和Cat对象"B" 使用instance of进行类判断 B instanceof Animal//会显示true,Cat是Animal类的子类,所以Cat的对象B是Animal类之一 A instanceof Cat//会显示false,A是父类,Animal的对象A并不是Cat类之一
若要访问B特有的成员变量和方法,则需要对A进行强制转换,转换成Cat类型
Cat DX = (Cat) A;