抽象类-Java

抽象类的使用

  • 类中成员方法在返回类型前面加上abstract关键字
  • 抽象类:抽象方法所在的类必须是抽象类。在class之前加abstract
  • 不能直接创建抽象类对象,必须使用子类继承抽象父类的所有抽象方法。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public abstract class Fu {
public abstract void eat();
}
public class Zi extends Fu {
@Override
public void eat() {
System.out.println("子类实现父类抽象方法");
}
}
public static void main(String[] args) {
// Fu fu = new Fu();报错
Zi zi = new Zi();
zi.eat();
}

抽象类调用自己的抽象方法,实现来自实现类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public abstract class Fu {
public abstract void eat();
public void dosomething(){
eat();
System.out.println("父类调用自己的抽象方法");
}
}
public class Zi extends Fu {
@Override
public void eat() {
System.out.println("子类实现父类抽象方法");
}
}
public static void main(String[] args) {
Zi zi = new Zi();
zi.dosomething();
}
  • 当真正实例化去使用的时候,使用的是子类重写后的实例方法

运行结果

1
2
子类实现父类抽象方法
父类调用自己的抽象方法