接口中的方法只能是抽象的吗?

Hello朋友你好!我是一名西安电子科技大学在校学生,目前主要在做web方向,前端居多,别的方向也有尝试。
如果对博客内容有疑问,或者有想法,欢迎私信或评论,看到一定会回复、尽力为大家解决问题!
如果你对web感兴趣,也欢迎一起交流讨论,比如学习路线、项目经验、技术点等等。
同时我会不定期写一些学习心得、技术教程、项目教学等博客,希望能丰富大家的技术视野。
技术不易,我们,继续努力!

很多人认为接口中就只能有抽象方法,其实不尽然。

接口中除了抽象方法,还可以有默认方法(default)、静态方法(static)、私有方法(private)。

声明抽象方法的时候可以省略public和abstract,但记得没有方法体。

接口中不能有动态方法。

在实现类implements接口后,必须要实现接口中的抽象方法,另外三种可以不作实现。如果就是不想实现,或者不想完全实现所有抽象方法,必须要把实现类定义成抽象。

1、

抽象方法被重写后,通过实现类的对象调用。用实现类的构造方法创建的接口对象也可以用(重写后的方法)。

2、

默认方法(当然可以重写)也是通过实现类的对象调用。用实现类的构造方法创建的接口对象也可以用(重写后的方法)。

3、

注意!!静态方法不能通过实现类的对象调用,要用必须通过接口名点方法名使用!!

4、

私有方法,听说是用来解决多个默认方法重复的问题。

你可能感兴趣的:(java,接口)