默认方法
来源:互联网 发布:恶魔猎手 名字 知乎 编辑:程序博客网 时间:2024/06/06 04:18
默认方法是JDK8新特性,指的是接口也可以提供具体方法了,而不像以前,只能提供抽象方法
A 这个接口,增加了一个默认方法 b,这个方法有实现体,并且被声明为了default
public interface A { public void a(); default public void b() { System.out.println("默认方法"); }}
假设没有默认方法这种机制,那么如果要为A增加一个新的方法b,那么所有实现了A接口的类,都需要做改动。
但是引入了默认方法后,原来的类,不需要做任何改动,并且还能得到这个默认方法
通过这种手段,就能够很好的扩展新的类,并且做到不影响原来的类
练习
为A接口增加一个默认方法 f()
为B接口也增加一个默认方法f()
问: AB同时实现了A,B接口,那么AB 对象调用f()的时候,是调用哪个接口的f()?
答:
作为同时继承了A和B中的 默认方法f,就必须在实现类中重写该方法
从而免去到底调用哪个接口的f方法这个模棱两可的问题
public class AB implements A,B{ //作为同时继承了A和B中的 默认方法f,就必须在实现类中重写该方法 //从而免去到底调用哪个接口的f方法这个模棱两可的问题 @Override public void f() { // System.out.println("这个AB自己的f方法"); } }
阅读全文
0 0
- 默认方法
- netscreen恢复默认方法
- 默认构造方法浅析
- JS 方法默认参数?
- js阻止默认方法
- 获取默认ClassLoader方法
- java8 之默认方法
- java8接口默认方法
- JAVA默认方法
- Java8 接口默认方法
- Java默认构造方法
- 【Java】默认方法噜噜噜
- 接口默认方法冲突
- 接口的默认方法
- C#: 方法的默认参数
- XP取消默认共享方法
- vc 回车键默认处理方法
- JAVA 方法 默认访问级别
- HBase介绍
- DeleteDC() ReleaseDC()和DeleteObject()之间的区别
- mysql学习记录:库的增删改查,表的增删改查
- 第八章练习
- 写给自己和所有迷茫期的程序员
- 默认方法
- 详细解读Python中的__init__()方法
- window下elasticsearch使用curl出现unmatched brace/bracket in column1
- 数据结构实验之查找四:二分查找
- 伪数组变为真数组
- zzz
- 系统环境问题总结
- 简单的分页
- 欢迎使用CSDN-markdown编辑器