java多态代码练习
public class Animal {
public int age = 10;
public int weight = 20;
public void eat(){
System.out.println("Animal.eat");
}
public void action(){
System.out.println("Animal.action");
}
}
public class Cat extends Animal {
public int age = 5;
public String name = "miaomiao";
@Override
public void eat() {
System.out.println("cat.eat");
}
public void scratch(){
System.out.println("cat.scratch");
}
}
public class Demo {
public static void main(String[] args) {
Animal a = new Cat();
System.out.println(a.age);
//System.out.println(a.name);
System.out.println(a.weight);
a.eat();
//a.scratch();
a.action();
System.out.println("------------------------");
System.out.println(((Cat)a).age);
System.out.println(((Cat)a).name);
System.out.println(((Cat)a).weight);
((Cat)a).eat();
((Cat)a).scratch();
((Cat)a).action();
}
}
运行结果:
10
20
cat.eat
Animal.action
------------------------
5
miaomiao
20
cat.eat
cat.scratch
Animal.action