Java带default方法接口的应用示例

网友投稿 246 2022-12-31


Java带default方法接口的应用示例

本文实例讲述了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!http://");

}

}

class subClhttp://ass 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程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:关于论坛系统接口测试工具的信息
下一篇:路由器接口测试工具(如何测试路由器端口)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~