package 抽象类与接口;
/*
* 1.被abstract修饰的类叫做抽象类,修饰的方法叫做抽象方法
* 2.抽象类无法被实例化,可以通过具体的子类通过多态来实例化
* 3.抽象类的子类可以是抽象类,可以不重写抽象方法,但是最终要交给一个具体的子类来全部重写
* 4.抽下类的子类也可以是具体类,一定要重写父类中的抽象方法
* 5.抽象的方法不能有方法体,有抽象方法的类一定是抽象类,抽象类可以有抽象方法也可以有非抽象方法。
*/
public class 抽象类 {
public static void main(String[] args) {
Animal a = new Cat();
a.eat();
a.call();
}
}
abstract class Animal{
public abstract void eat() ;
//抽象方法不能有主体
public void call() {
System.out.println("hahaha");
}
}
abstract class buruAnimal extends Animal{
public abstract void drink();
}
class Cat extends buruAnimal{
public void eat() {
System.out.println("猫吃鱼");
}
public void drink() {
System.out.println("猫喝雪碧");
}
}
class Dog extends buruAnimal{
public void eat() {
System.out.println("狗吃屎");
}
public void drink() {
System.out.println("狗和芬达");
}
}
Java抽象类的使用
最新推荐文章于 2024-05-23 14:06:51 发布