public class Animal1 {
private String name;
private int age;
private String color;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public void intro() {
System.out.println("大家好我是动物,又到了春季");
}
}
-------------------------------------------------------------------------------------------------------------------------------------------
public class Cat1 extends Animal1 {
@Override
public void intro() {
System.out.println("我是一只猫咪");//输出为"我是一只猫咪"
}
public void run() {
System.out.println("喵喵,我开始跑了");
}
}
----------------------------------------------------------------------------------------------------------------------------------------
public class Test1 {
public int num = 10;
public static void main(String[] args) {
//这就是多态写法,Animal an是一个父类对象,new了一个子类对象,将子类对象交给了父类引用,扩大了子类的范围
//使用Cat类的父类Animal类型接收了Cat对象,调的还是Cat的方法,并不是父类的方法,在特定场景下可充当父类
Animal an =new Cat();
an.intro();
/* an.run();//是调不到Cat1类中run()方法的,因为run是Cat的方法 */
}
}