java8 新特性之方法引用
1.java泛型2.Java面向对象三大特征3.Java设计模式——策略模式4.Java设计模式——代理模式5.Java设计模式——装饰者模式6.Java设计模式——单例模式+工厂模式7.Java 定时任务quartz8.java 基本操作9.JavaWeb获取信息10.Java操作Html11.java 定时任务12.Java 读取文件13.Java 发送邮件14.Java解析JSON数据15.java线程之CompletableFuture16.java8 新特性之日期时间 API17.java8 新特性之Optional 类18.java8 新特性之默认方法
19.java8 新特性之方法引用
20.java8 新特性之Lambda 表达式21.java8 新特性之函数式接口22.Java操作Zip23.Java集成验证码参考文章:菜鸟教程 https://www.runoob.com/java/java8-method-references.html
这一章节如果不好理解可以去看下我的另一篇函数接口,这章节其实用到的也是函数结果。
java8 新特性之函数式接口
方法引用介绍:
方法引用通过方法的名字来指向一个方法。
方法引用可以使语言的构造更紧凑简洁,减少冗余代码。
方法引用使用一对冒号 :: 。
1、构造器引用:它的语法是Class::new,或者更一般的Class< T >::new实例如下:
// 构造方法引用 暂时发现只能无参构造方法引用 Supplier<Lambda> supplier = Lambda::new;
2、静态方法引用:它的语法是Class::static_method,实例如下:
public class Lambda { Lambda(){}; Lambda(int i){}; static void test(Lambda l){System.out.println(l);}; static void test2(String l){System.out.println(l);}; public static void main(String[] args) { // 构造方法引用 暂时发现只能无参构造方法引用 Supplier<Lambda> supplier = Lambda::new; Consumer<Lambda> consumer = x->System.out.println(x);; Consumer<Lambda> consumer2 = Lambda::test; Consumer<String> consumer3 = Lambda::test2; } }
3、特定类任意实例的方法引用:它的语法是instance::method实例如下:
Supplier<Lambda> supplier = Lambda::new; Supplier<Integer> consumer4 = supplier.get()::repair;
由上可以看出,只是把这个类的方法,赋值给函数接口,具体调用的时候传入参数 ,编译期检查参数类型是否符合函数接口的泛型。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类