1.抽象的概念
=========================================================================================================================
2.抽象方法和抽象类的定义格式
========================================================================================================================
3.如何使用抽象类和抽象方法
=====================================================================================================================
4.注意事项
Animal.java
package cn.itcast.day09.demo13;
// 最高的抽象父类
public abstract class Animal {
public abstract void eat();
public abstract void sleep();
}
===================================================================================
Dog.java
package cn.itcast.day09.demo13;
// 子类也是一个抽象类
public abstract class Dog extends Animal {
@Override
public void eat() {
System.out.println("狗吃骨头");
}
// public abstract void sleep();
}
====================================================================================
Dog2Ha.java
package cn.itcast.day09.demo13;
public class Dog2Ha extends Dog {
@Override
public void sleep() {
System.out.println("嘿嘿嘿……");
}
}
===================================================================================
DogGolden.java
package cn.itcast.day09.demo13;
public class DogGolden extends Dog {
@Override
public void sleep() {
System.out.println("呼呼呼……");
}
}
===================================================================================
DemoMain.java
package cn.itcast.day09.demo13;
public class DemoMain {
public static void main(String[] args) {
// Animal animal = new Animal(); // 错误!
// Dog dog = new Dog(); // 错误,这也是抽象类
Dog2Ha ha = new Dog2Ha(); // 这是普通类,可以直接new对象。
ha.eat();
ha.sleep();
System.out.println("==========");
DogGolden golden = new DogGolden();
golden.eat();
golden.sleep();
}
}