1 package duoTai08; 2 3 public abstract class Animal { 4 private int age = 20; 5 private final String city = "北京"; 6 7 public Animal(){} 8 9 public Animal(int age){ 10 this.age = age; 11 } 12 13 public void show(){ 14 age = 40; 15 System.out.println(age); 16 17 //city = "上海"; 18 System.out.println(city); 19 } 20 21 public abstract void eat(); 22 23 }
1 package duoTai08; 2 3 public class Cat extends Animal{ 4 @Override 5 public void eat() { 6 System.out.println("猫吃鱼"); 7 } 8 }
1 package duoTai08; 2 /* 3 成员变量 4 可以是变量 5 也可以是常量 6 构造方法 7 有构造方法,但是不能实例化 8 构造方法的作用是用于子类访问父类数据的初始化 9 成员方法 10 可以有抽象方法:限定子类必须完成某些动作 11 也可以有非抽象方法:提高代码复用性 12 */ 13 public class AnimalDemo { 14 public static void main(String[] args) { 15 Animal a = new Cat(); 16 a.eat(); 17 a.show(); 18 } 19 }