Java8新特性 - 默认方法
Posted WinterAndRain
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java8新特性 - 默认方法相关的知识,希望对你有一定的参考价值。
是什么?
就是接口可以有一个默认的实现方法,而且不需要用实现类去实现其方法。
怎么使用?
在方法前加default,静态方法直接写默认实现
1 /** 2 * 默认方法 3 */ 4 public class DefaultMethod { 5 public static void main(String[] args) { 6 VO vo = new VO(); 7 vo.doSome(); 8 VO.doSomeTwo(); 9 } 10 } 11 12 interface Operate { 13 default void doSome() { 14 System.out.println("原始版本"); 15 } 16 17 static void doSomeTwo() { 18 System.out.println("抽象原始版本"); 19 } 20 } 21 22 class DB implements Operate { 23 24 @Override 25 public void doSome() { 26 System.out.println("第一次重写的版本"); 27 Operate.super.doSome(); 28 } 29 30 public static void doSomeTwo() { 31 System.out.println("第一次重写的抽象版本"); 32 Operate.doSomeTwo(); 33 } 34 } 35 36 class VO extends DB { 37 38 @Override 39 public void doSome() { 40 System.out.println("第二次重写的版本"); 41 DB db = new DB(); 42 db.doSome(); 43 } 44 45 public static void doSomeTwo() { 46 System.out.println("第二次重写的抽象版本"); 47 DB.doSomeTwo(); 48 } 49 50 }
有什么好处?
防止修改接口时,实现改接口的类需要全部修改
以上是关于Java8新特性 - 默认方法的主要内容,如果未能解决你的问题,请参考以下文章