java接口和类的区别在那里.

Python021

java接口和类的区别在那里.,第1张

接口表示一个完全抽象类,其成员变量为常量,应该定义为public static final.如果成员变量前没有添加修饰符,系统会默认修饰符为public static final.所有的方法为public abstract抽象方法。

类在面对对象编程中,类代表着对象的类别。利用建模抽象来定义那些表露该抽象的对象的性质和行为。在这里,类的属性对应着对象的性质,在Java中由字段来表示,类的方法对应对象的行为,在Java中也是用方法来表示。类为对象提供了契约和实现。二者的区别在于契约定义了提供哪些服务,而实现定义了如何提供服务。

1、接口里所有的属性和方法都只能是静态的和public的

2、接口中的方法不能有方法体

3、接口不能实例化对象

4、接口只能用implements实现,而不能用extends继承,但是接口继承接口时要用extends

5、一个类可以实现多个接口,只能继承一个类

6、实现接口的类必须要实现接口中的方法,但继承类可以不重写父类中的方法

7、接口的关键字是interface,类是class

抽象类和接口的区别主要如下:

实现方式不同。类型通过 extends 继承(或叫做扩展)一个抽象类,但是通过implements 实现一个接口;

方法定义方式不同。抽象类的抽象方法要通过 abstract 关键字声明,而接口的方法不用特别声明;

抽象类可以有private或protect字段和方法,而接口里面只能包含public方法(隐含,不用声明,默认就是public)

一个类只能继承一个抽象类,但是可以实现多个接口;

更多可以参考:

Interface vs Abstract Class in Java: What's the Difference?