Java8简明学习之接口默认方法
2018-07-24 07:53:16来源:博客园 阅读 ()
接口中有默认方法实现
Java8允许我们使用default关键字,为接口声明添加非抽象的方法实现。
public interface DefaultInterFace { int plus(int x, int y); default int mul(int x, int y) { return x*y; } default int mul2(int x, int y) { return x*x*y*y; } }
public class DefaultInterFaceImpl implements DefaultInterFace { @Override public int plus(int x, int y) { return x + y; } // @Override // public int mul(int x, int y) { // return x*x*y*y; // } }
public class DefaultInterFaceTest { @Test public void testDefaultInterFace() { DefaultInterFace defaultInterFace = new DefaultInterFaceImpl(); System.out.println(defaultInterFace.plus(5, 6)); System.out.println(defaultInterFace.mul(5, 6)); System.out.println(defaultInterFace.mul2(5, 6)); } }
Java8中接口和抽象类的比较
相同点:
都能定义方法和属性(之前接口不能定义方法)。
抽象类和接口都可以不含有抽象方法。
抽象类和接口都不能创建对象。
继承和实现接口或抽象类的子类必须实现接口或抽象类的所有的方法。
不同点:
属性上,抽象类可以用各种各样的修饰符修饰。而接口的属性是默认的public static final
抽象类中可以含有静态代码块和静态方法,而接口不能含有静态方法和静态代码块。
抽象类可以含有构造方法,接口不能含有构造方法。
抽象类表示的是IS-A的关系,接口则表示LIKE-A的关系。
接口只能继承接口。而抽象类可以继承普通的类,也能继承接口和抽象类。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:增强型for循环与集合
下一篇:Java知识点梳理——继承
- java学习之第一天 2020-06-11
- Java学习之第二天 2020-06-11
- java8 stream的分组功能,具体时候是真的好用 2020-06-10
- Kotlin与java8的SAM转换对比 2020-06-03
- JAVA8 Stream流 2020-06-02
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash