javaSe抽象类和接口的区别【基础】

抽象类的特点:
1.抽象类中可以有构造方法
2.抽象类中可以存在普通属性和普通方法,静态属性和静态方法
3.抽象类中可以存在抽象方法
4.一个类中如果有抽象方法,那么该类一定是抽象类,但抽象类里面不一定有抽象方法
5.抽象类的抽象方法,需要有子类实现,如果子类不实现,则子类也需要定义为抽象的

接口的特点
1.在jdk1.8之后接口可以方法可以被static和default修饰,并且可以有方法体【所以现在说接口中的方法一定是抽象方法已经错了】
2.在接口中只有常量,因为定义的变量,在编译的时候都会默认加上public static final 
3.接口中的方法永远都被public修饰
4.接口中没有构造方法,也不能实例化接口的对象
5.接口可以实现多继承
6.接口中定义的方法都需要有实现类来实现,如果实现类不能实现接口中的方法,则该实现类抽象

猜你喜欢

转载自blog.csdn.net/qq_38777614/article/details/81106093