欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Java中抽象类和接口有什么区别

时间:2023-08-07

相同:

1不能够实例化

2.可以将抽象类和接口类型作为引用类型

3.一个类如果继承了某个抽象类或者实现了某个接口都需要对其中的抽象方法全部进行实现,否则该类仍然需要被声明为抽象类

不同:

抽象类:

1.抽象类中可以定义构造器

2.可以有抽象方法和具体方法

3.抽象类中的成员可以是private,默认,protected,public

4.抽象类中可以定义成员变量

5.有抽象方法的类必须声明为抽象类,抽象类未必有抽象方法

6.抽象类中可以包含静态方法

7.一个类只能继承一个抽象类

接口:

1.接口中不能定义构造器

2.全部是抽象方法

3.接口中的成员都是public的

4.接口中定义的变量实际上都是常量

5.接口中不能有静态方法

6.一个类可以实现多个接口

什么时候用接口,什么时候用抽象类?

抽象类更重点描述一个概念(主要指对事物的抽象):食物,动物,植物等

接口指某些事物所具有的共同的特征(主要指对行为的抽象):飞,吃等

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。