Java中的抽象类abstract

时间:2023-03-10 06:49:02
Java中的抽象类abstract

abstract定义抽象类

abstract定义抽象方法,只需要声明,不需要实现

包含抽象方法的类是抽象类

抽象类中可以包含抽象方法,也可以包含普通方法

抽象类不能直接创建,可以定义父类引用变量指向子类的对象

子类继承抽象类,必须实现父类中的抽象方法

抽象类的应用场景:

  1.父类只知道子类应该包含的方法,但是不知道子类如何去实现这些方法,约束子类必须有哪些方法,但是并不关心它如何实现。

  2.从多个具有相同特征的类中抽象出一个抽象类,以抽象类作为子类的模板,避免子类设计的随意性

    package com.wangcf;
//父类
public abstract class Animal {
public abstract void eat();
}
package com.wangcf;
//子类
public class Bridge extends Animal{ /**
* 这个抽象方法必须实现
*/
@Override
public void eat() {
// TODO Auto-generated method stub
System.out.println("子类鸟,爱吃虫子");
} }
package com.wangcf;
//子类
public class Tiger extends Animal{ @Override
public void eat() {
// TODO Auto-generated method stub
System.out.println("子类老虎爱吃肉");
}
}
package com.wangcf;
//测试类
public class Test {
public static void main(String[] args) {
Animal animal=new Bridge();
animal.eat();
Animal animal2=new Tiger();
animal2.eat();
}
}