【Java8新特性】Java 8 接口之 default method
来源:互联网 发布:淘宝店的店铺介绍 编辑:程序博客网 时间:2024/06/05 14:49
interface Idemo { default void demo(){ System.out.println("demo"); }}
1. 擴展既有代碼
在這一新特性出現之前,如果我們要擴展既有代碼,給某一個接口增加新方法,就會帶來一個問題,即其實現類無新增接口之實現,編譯便不會通過。
2. 面向組合
當我們遇到這樣的業務邏輯,即多個功能的不同組合,原來我的做法就是用設計模式(Decorate Pattern)來解決,現在我們有了default method,則我們多了另一種選擇。
interface IIcecream {}interface IBerryIcecream{ default bool addBerry(){ }}interface IAppleIcecream{ default bool addApple(){ }}interface IOrangeIcecream{ default bool addOrange(){ }}////////////////////////////////////////class AppleOrangeIcecream implements IIcecream, IAppleIcecream, IOrangeIcecream{}class OrangeBerryIcecream implements IIcecream, IBerryIcecream, IOrangeIcecream{}
0 0
- 【Java8新特性】Java 8 接口之 default method
- Java8新特性接口的增强之default方法
- Java8 新特性 接口中的default方法
- Java之java8新特性
- java8新特性之接口定义增强
- Java8之Interface接口新特性
- Java8:接口新特性
- jdk1.8 新特性之 default,static 接口关键字
- java8之新特性介绍(java 8 new features)
- 【java8新特性】关于接口
- Java8新特性--Interface中的default方法(接口默认方法)
- Java8新特性之一可以使用default关键字,static关键字定义接口
- Java8新特性之 函数式接口FunctionalInterface详解
- Java8新特性之四函数式接口
- JAVA8新特性之(函数式接口)
- java8新特性之接口默认方法&静态方法
- [Java]Java8新特性-lambda表达式/语法/函数式接口
- java8 新特性之-----Lambda
- C++11并发编程1——C++11多线程简介
- ZJU PAT 1004
- 第十三周项目五(2)b
- 日语学习之沪江N4基础 20141123 -3
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
- 【Java8新特性】Java 8 接口之 default method
- UVa10637 - Coprimes(DFS,GCD)
- HDU - 5109(证明未完)
- Android 开源框架Universal-Image-Loader完全解析(二)--- 图片缓存策略详解
- 第十三周项目一(4)
- Java实现C的语法分析器(预测分析法)
- “Apple Mobile Device Support” 的卸载经历的思路总结
- 交换输出
- debian7.5远程,xdmcp外网没成功,换为vnc