java请求接口示例_Java 8:功能接口示例

java请求接口示例

为了支持Java 8中的lambda表达式,他们引入了Functional Interfaces。

具有单一抽象方法的接口可以称为功能接口。

Runnable,Comparator,Cloneable是功能接口的一些示例。 我们可以使用Lambda表达式实现这些功能接口。

例如:

Thread t =new Thread(new Runnable(){public void run(){System.out.println("Runnable implemented by using Lambda Expression");}
});

这是创建线程的旧方法。

由于Runnable具有单一抽象方法,我们可以将其视为功能接口,并且可以使用如下所示的Lambda表达式。

Thread t = new Thread(()->{System.out.println("Runnable implemented by using Lambda Expression");
});

在这里,我们没有传递Runnable对象,而是传递了lambda表达式。

声明我们自己的功能接口:

我们可以通过限定了S个英格尔一个 bstract M在接口ethod宣布我们自己的功能界面。

public interface FunctionalInterfaceTest{
void display();
}
//Test class to implement above interface
public class FunctionInterfaceTestImpl {public static void main(String[] args){//Old way using anonymous inner classFunctionalInterfaceTest fit = new FunctionalInterfaceTest(){public void display(){System.out.println("Display from old way");}};fit.display();//outputs: Display from old way//Using lambda expressionFunctionalInterfaceTest newWay = () -> {System.out.println("Display from new Lambda Expression");}newWay.display();//outputs : Display from new Lambda Expression}
}

我们可以使用@FunctionalInterface批注进行批注,以告知编译时错误。 它是可选的

例如:

@FunctionalInterface
public interface FunctionalInterfaceTest{void display();void anotherDisplay();//shows an error, FunctionalInterface should have only one abstarct method.
}

默认方法:

功能接口不能具有多个抽象方法,但是可以具有多个默认方法。

Java 8中引入了默认方法,以添加新方法进行接口,而不会干扰已实现的类。

interface DefaultInterfaceTest{void show();default void display(){System.out.println("Default method from interface can have body..!");}
}
public class DefaultInterfaceTestImpl implements DefaultInterfaceTest{public void show(){System.out.println("show method");}//we dont need to provide any implementation to default method.public static void main(String[] args){DefaultInterfaceTest obj = new DefaultInterfaceTestImpl();obj.show();//out puts: show methodobj.display();//outputs : Default method from interface can have body..!}
}

默认方法的主要用途是不强制实现类,我们可以向接口添加方法。

多重继承:

如果两个接口中存在相同的默认方法,并且一个类正在实现该接口,则它将引发错误。

//Normal interface with show methodinterface Test{default void show(){System.out.println("show from Test");}}//Another interface with same show methodinterface AnotherTest{default void show(){System.out.println("show from Test");}}//Main class to implement above two interfacesclass Main implements Test, AnotherTest{
//here is an ambiguity which show method has to inherit here
}

此类不会编译,因为Test和AnotherTest接口show()方法之间存在歧义,要解决此问题,我们需要将Show()方法覆盖到Main Class。

class Main implements Test, AnotherTest{void show(){System.out.println("Main show method");}}

翻译自: https://www.javacodegeeks.com/2014/05/java-8-functional-interface-example.html

java请求接口示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中的外观设计模式

立面是指建筑物的外观。 当穿过街道时,我们所看到的只是建筑物的外观。 该图面抽象了建筑物的所有复杂实施细节。 同样, 外观设计模式旨在为子系统中的一组接口提供统一的接口。 这个统一的接口对客户端隐藏了子系统的复杂性。 它属于结构模式类别。 J…

串口服务器介绍及产品特点详解

串口服务器提供串口转网络功能,能够将RS-232/485/422串口转换成TCP/IP网络接口,实现RS-232/485/422串口与TCP/IP网络接口的数据双向透明传输。使得串口设备能够立即具备TCP/IP网络接口功能,连接网络进行数据通信,极大的扩展串口设…

串口服务器应用领域及应用方案详解

串口服务器提供串口转网络功能,使得串口设备能够立即具备TCP/IP网络接口功能,连接网络进行数据通信,极大的扩展串口设备的通信距离,应用领域非常广泛。接下来我们就来为大家详细介绍下串口服务器的应用领域及应用方案,…

将对象转换为Map并返回

在大型企业应用程序中,有时我们需要将数据对象与Map相互转换。 通常,这是特殊序列化的中间步骤。 如果可以使用某种标准,则最好使用该标准,但是很多时候,一些首席架构师所设想的体系结构,严格的环境或某些类…

多串口服务器的工作方式及接线示意图介绍

串口服务器提供串口转网络功能,能够将RS-232/485/422串口转换成TCP/IP网络接口,实现RS-232/485/422串口与TCP/IP网络接口的数据双向透明传输。那么,多串口服务器是怎么工作,怎么接线的?接下来就由飞畅科技小编一起来为…

多路串口服务器的应用及应用范围介绍

串口服务器的应用领域很是广泛,主要应用在门禁系统、考勤系统、售贩系统、POS系统、楼宇自控系统、自助银行系统、电信机房监控、电力监控等。接下来就由飞畅科技的小编来为大家详细介绍下多路串口服务器的应用及应用范围,感兴趣的朋友就一起来看看吧&am…

javafx 调用接口_JavaFX技巧3:使用回调接口

javafx 调用接口作为UI框架开发人员,提供自定义控件外观和行为的方法是我工作的一部分。 在许多情况下,这是通过允许框架用户在控件上注册工厂来完成的。 过去,我会为此创建一个工厂接口,并在框架内提供一个或多个默认实现。 这些…

工业串口服务器如何使用

串口联网服务器让传统的RS-232/422/485设备立即联网,利用基于TCP/IP的串口数据流传输的实现来控制管理的设备硬件是专为串口转以太网设计连接的桥梁。那么,我们该如何正确使用工业串口服务器呢?接下来我们就跟随飞畅科技的小编一起来看看吧&a…

JMetro 5.5版发布

JMetro 5.5版刚刚发布。 进行了重大更新,其中添加了一些错误修复,样式和功能。 一个新的主题测试器示例应用程序也已添加到示例子项目中,该应用程序测试了几项内容,例如控件之间的对齐。 我将尽量使这篇文章简短,因为…

关于工业级RS485串口服务器的组网方式详解

工业级串口服务器提供串口转网络功能,是实现串口(TTL串口或RS232/RS485/RS422)数据与TCP/IP协议数据相互转换实现数据通过网络传输的工业互联通讯设备。通过连接多个串口设备并将串口数据流进行选择和处理,将串口数据转换为以太网…

什么是四路串口服务器?

四路串口RS232/RS422/RS485设备联网服务器(以下简称:串口服务器)是由杭州飞畅科技自主研发的串口设备联网产品,其中RS232/RS422/RS485可以任意组合使用(客户可定制)。那么,什么是四路串口服务器&#xff1f…

Java中的代理设计模式

代理对象或代理对象为另一个对象提供占位符,以控制对该对象的访问。 代理充当原始对象的轻量级版本或简化版本。 它支持与原始对象相同的操作,但可以将那些请求委托给原始对象以实现它们。 代理设计模式是一种结构模式,其中代理类包装了实际…

光模块简介、结构介绍及分类详解

光模块(optical module)由光电子器件、功能电路和光接口等组成,光电子器件包括发射和接收两部分。简单的说,光模块的作用就是光电转换,发送端把电信号转换成光信号,通过光纤传送后,接收端再把光信号转换成电信号。接下…

光模块是怎么分类的?光模块的应用及作用有哪些?

光模块是进行光电和电光转换的光电子器件。光模块的发送端把电信号转换为光信号,接收端把光信号转换为电信号。光模块按照封装形式分类,常见的有SFP,SFP,SFF,千兆以太网路界面转换器(GBIC)等。那…

仿制药名言_仿制药的美丽与陌生

仿制药名言最近,我正在为Oracle认证专家Java SE 7程序员考试做准备,而我恰巧在Java泛型领域遇到了一些看起来很奇怪的构造。 但是,我也看到了一些巧妙而优雅的代码。 我发现这些示例值得分享,这不仅是因为它们可以使您的设计选择更…

如何区分光猫、路由器和交换机?

如今,网络已经进入了千家万户,上网已成为了我们生活中必不可少的事情。通常,在家里最常见的网络设备有:光猫(光调制解调器)、路由器、交换机,但很多小白用户并不能轻易区分它们。当遇上网络故障…

Java 12:开关表达式

在Java 12中,对switch语句进行了增强,以便可以将其用作表达式。 现在也可以在一种情况下打开多个常量,从而使代码更简洁易读。 这些增强是预览语言功能 ,这意味着必须使用--enable-preview标志在Java编译器和运行时中显式启用它们…

什么是网络延长器?

网络延长器就是能够把网络传输距离有效延长的设备,网络延长器能够突破传统以太网传输距离100米以内的限制,可以通过双绞线将100M网络传输500米,10M网络传输1500米甚至更长。它将网络的传输距离的极限从铜线的100米扩展到千米以上,…

什么是延长器?延长器常见类型介绍

延长器是用来延长信号的器件,通常用于长距离直连线材无法满足传输要求的情况,一般是为了确保信号长距离无衰减的传输而设计,因此多是有源的。那么,什么是延长器?延长器的常见类型有哪些呢?接下来我们就一起…

solr 模糊匹配_Solr中的前缀和后缀匹配

solr 模糊匹配搜索引擎都是关于查找字符串的。 用户输入一个查询词,然后从反向索引中检索它。 有时,用户正在寻找的值只是索引中值的子字符串,并且用户可能也对这些匹配感兴趣。 对于德语这样的包含复合词(如Semmelkndel&#xff…