JAVA8新特性

本文详细介绍了Java 8的几个重要特性,包括接口中的默认方法和静态方法、Lambda表达式的多种形式、函数式接口的概念及其与Lambda的关系,以及如何使用双冒号操作符进行方法引用。对于Java开发者来说,理解这些特性对于提升开发效率和代码质量至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,接口中默认方法和静态方法

 1.1默认方法又称扩展方法,需要在方法前使用default关键字记性修饰

必须通过接口的实现类的实例进行访问,既:对象名.默认方法名()

1.2 静态方法又称为类方法,需要在方法前使用static 关键字进行修饰

静态方法既可以通过接口名进行访问,也可以通过接口时实现类的实例进行访问。建议使用:接口名.静态方法名()

2,Lambda表达式

2.1多参数,多语句的Lambda表达式
    (int x,int  y)->{
    System.out.println(y+"");
    System.out.peintln(y+"");
     return x+y;
}
2.2省略参数类型的Lanbda表达式
    (x, y)->{
    System.out.println(y+"");
    System.out.peintln(y+"");
     return x+y;
}
2.3,省略{}和return关键字的Lambda表达式
    (x,y)-> x+y
2.4只有一个参数的Lambda
    参数名 ->{方法体}
2.5 只有一条语句和一个参数的Lambda表达式
    参数名 -> 方法体
2.6 没有参数的Lambda表达式

()->方法体

3,函数式接口

函数式接口本质上是一个仅有一个抽象方法的普通接口

@FuncationalInterface
public interface 接口名{
    //只有一个抽象方法
}
Lambda 表达式只能为函数式接口创建对象,既Lambda表达式只能实现具有一个抽象方法的接口,且该接口必须由@FuncationalInterface注释修饰的接口

4,::方法的引用

在java 8 中可以使用双冒号操作符::来简化Lambda表达式方法引用。

4.1 容器::方法名
    ::方法引用由三部分组成:
 左边是容器,可以是类名或实例名
 中间是::操作符
 右边是相应的方法名,注意方法名后没有小括号
4.2 ::方法引用可以是静态方法,实例方法以及构造方法,引用不同的方法时书写的格式也不同
    4.2.1 静态方法                                   类名::静态方法名
    4.2.2  实例方法                                  对象::实例方法名
    4.2.23  构造方法                                  类名::new

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值