java 接口和抽象类的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 接口和抽象类的区别相关的知识,希望对你有一定的参考价值。

接口和抽象类的区别:
1,接口里不能定义私有的方法/变量,抽象类可以
但抽象类如果定义了私有变量,一般会定义一个共有方法来使用这个变量
不然这个变量就没有意义了
private String name;
public void setName(String name){
 this.name = name;
}
public String getName(){
 return name;
}
2,接口里定义的方法没有方法体(除非定义为public/default)
 抽象类定义的方法有方法体
3,接口定义的方法需要全部被实现,抽象类不是
4,可以实现多个接口,但只能继承一个类
5,抽象类是对根源的抽象(is a)接口是对动作/行为的抽象(like a)
比如:人是动物(抽象类),是能说话,会穿衣服(接口)的动物。
所以,可以实现多个接口,但只能继承一个父类


















以上是关于java 接口和抽象类的区别的主要内容,如果未能解决你的问题,请参考以下文章

、接口与类的区别;

java接口与抽象类有啥区别?

java中抽象类和接口的区别?

java-接口和抽象类的联系和区别。

java 接口和抽象类的区别

Java面试题:接口和抽象类的区别