时间:2021-05-20
本文实例讲述了Java带default方法接口的应用。分享给大家供大家参考,具体如下:
一 带default方法接口的实现
1 代码
interface InterfaceA // 定义一个接口{ public static String INFO = "static final." ; // 全局常量 public void print() ; // 抽象方法 default public void otherprint() // 带方法体的默认方法 { System.out.println("print default1 methods InterfaceA!"); }}class subClass implements InterfaceA //子类InterfaceAB实现接口InterfaceA{ public void print( ) //实现接口中的抽象方法print( ) { System.out.println("print abstract methods InterfaceA!"); System.out.println(INFO); }}public class Interfacedefault{ public static void main(String[ ] args) { subClass subObj = new subClass( ); //实例化子类对象 subObj.print( ); //调用覆写过的抽象方法 subObj.otherprint( ); //调用接口中的默认方法 System.out.println(InterfaceA.INFO); //输出接口中的常量 InterfaceA InterfaceAobj = new subClass(); // 实例化子类对象,赋值给一个接口引用 InterfaceAobj.print( ); //调用覆写过的抽象方法 InterfaceAobj.otherprint( ); //调用接口中的默认方法 }}2 运行
print abstract methods InterfaceA!
static final.
print default1 methods InterfaceA!
static final.
print abstract methods InterfaceA!
static final.
print default1 methods InterfaceA!
二 仅有default方法接口的使用
1 点睛
Java 8中,允许在一个接口中只定义默认方法,而没有一个抽象方法。
2 代码
interface InterfaceA // 定义一个接口{ default public void otherprint( ) // 带方法体的默认方法 { System.out.println("print default1 methods only in InterfaceA!"); }}class subClass implements InterfaceA //子类InterfaceAB实现接口InterfaceA{ //do nothing}public class InterfaceDefaultOnly{ public static void main(String[ ] args) { subClass subObj = new subClass( ); //实例化子类对象 subObj.otherprint(); //调用接口中的默认方法 }}3 运行
print default1 methods only in InterfaceA!
4 说明
由于接口InterfaceA中并无抽象方法,因此无抽象方法需要在子类中“实现”,所以子类subClass的主体部分什么也没有做,但这部分工作是必需的,因为接口是不能实例化对象的,即使子类subClass什么也没有做,其实也实现了一个功能,即由subClass可以实例化对象。
更多java相关内容感兴趣的读者可查看本站专题:《Java面向对象程序设计入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Java8接口的默认方法什么是默认方法,为什么要有默认方法?简单说,就是接口可以有实现方法,而且不需要实现类去实现其方法。只需在方法名前面加个default关键
1.default和static关键字a.default用在接口中,为该接口的实现类的方法.-->不能通过接口直接调用.static也是用在接口中,同Class
什么是default方法?Java8发布以后,可以给接口添加新方法,但是,接口仍然可以和它的实现类保持兼容。这非常重要,因为你开发的类库可能正在被多个开发者广泛
什么是default方法?java8发布以后,可以给接口添加新方法,但是,接口仍然可以和它的实现类保持兼容。这非常重要,因为你开发的类库可能正在被多个开发者广泛
Kotlin基础教程之类、对象、接口Kotlin中类、接口相关概念与Java一样,包括类名、属性、方法、继承等,如下示例:interfaceA{funbar()