packagecom.company;/*** 抽象类继承
* 用abstract修饰类就是抽象类
* 用abstract修饰方法就是抽象方法(一般使用比较少)
* 抽象类不能被实例化*/
public classMain {public static voidmain(String[] args) {
Animal an= newCat();
an.cry();//输出 “猫叫,喵喵喵”
an = newDog();
an.cry();//输出 “狗叫,汪汪汪”
Cat cat1= newCat();
cat1.eat();//输出 “猫爱吃鱼”
}
}/*** 定义一个动物抽象类*/
abstract classAnimal {private intage;privateString name;public intgetAge() {returnage;
}public void setAge(intage) {this.age =age;
}publicString getName() {returnname;
}public voidsetName(String name) {this.name =name;
}abstract public voidcry();
}/*** 猫类(继承动物类)*/
class Cat extendsAnimal {/*** 实现抽象父类中的具体方法*/@Overridepublic voidcry() {
System.out.println("猫叫,喵喵喵");
}/*** 子类自有方法*/
public voideat() {