JAVA8 新特性 边学边记(一) Default Methods_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > JAVA8 新特性 边学边记(一) Default Methods

JAVA8 新特性 边学边记(一) Default Methods

 2014/4/17 12:25:39  第一次认识梦想  程序员俱乐部  我要评论(0)
  • 摘要:在java8以前的版本,我们对interface的认识通常是大概是以下这个样子1.所有方法均为虚方法2.所有方法默认public3.一个实装类如果实现一个借口必须实现这个借口所有的虚方法。好了,现在问题来了,如果一个interface因为某些需要要增加一个方法,那么,之前实现这个interface的所有实装类都需要进行变更,增加这个方法的定义。这就为维护造成了很大的麻烦。在java8增加了一个新的语言特性---interface的方法可以定义为默认方法(defaultmethods
  • 标签:新特性 Default Java
在java 8以前的版本,我们对interface的认识通常是大概是以下这个样子
1.所有方法均为 虚方法
2.所有方法默认 public
3.一个实装类如果实现一个借口必须实现这个借口所有的虚方法。

好了,现在问题来了,如果一个interface因为某些需要要增加一个方法,
那么,之前实现这个interface的所有实装类都需要进行变更,增加这个方法的定义。
这就为维护造成了很大的麻烦。


在java8增加了一个新的语言特性 --- interface的方法可以定义为默认方法(default methods)甚至于静态方法

class="java">
public interface sample {
  default void test() {
    System.out.println("just a sample");
  }

  static void testUtil() {
    System.out.println("just a sample for util method");
  }
}


这样,实现了该interface的实装类就可以不必实装(一部分已经默认实装)所有的方法了。
于是,当interface发生变更的时候,保证了接口与之前实装好的代码的兼容性。
发表评论
用户名: 匿名