抽象类特点
/*
在抽象的动物类中定义两个抽象方法。吃饭和睡觉。
*/
abstract class Animal4{
//定义一个抽象方法吃饭,不给出具体实现
public abstract void eat();
//定义一个抽象方法睡觉,不给出具体实现
public abstract void sleep();
}
class Dog4 extends Animal4{
@Override
public void eat() {
System.out.println("狗吃肉");
}
@Override
public void sleep() {
System.out.println("狗侧着睡");
}
public void lookDoor(){
System.out.println("看门");
}
}
class Cat4 extends Animal4{
@Override
public void eat() {
System.out.println("猫吃鱼");
}
@Override
public void sleep() {
System.out.println("猫趴着睡");
}
}
public class AbstractTest1 {
public static void main(String[] args) {
//使用抽象多态创建第一个对象
Animal4 a = new Dog4();
a.eat();
a.sleep();
// a.lookDoor();
Dog4 d = (Dog4)a;
d.lookDoor();
//使用抽象多态创建第二个对象
Animal4 a2 = new Cat4();
a2.eat();
a2.sleep();
}
}