Fork me on GitHub

抽象类和接口的区别

区别一:

  • 子类只能继承一个抽象类,不能继承多个
  • 子类可以实现多个接口

区别二:

  • 抽象类可以定义publicprotectedpackageprivate
    静态非静态
    final非final属性
  • 但是接口中声明的属性,只能是public静态final

抽象类和接口都可以有实体方法。接口中的实体方法,叫做默认方法。

1
2
3
4
5
6
7
8
9
10
public interface AP {
public static final int resistPhysic = 100;
//resistMagic即便没有显式的声明为 public static final
//但依然默认为public static final
int resistMagic = 0;
public void magicAttack();
}

Your support will encourage me to continue to create!