new file会创建文件吗_520了!除了new个对象,你还会用supplier创建对象吗?

ad9f8858b9138e020fe73a333ff90a33.gif

0 1前言 怎么优雅地度过5月20号?送给读者朋友们几句朋友圈文案! 1. 5月20号是一个有特殊意义的日子,它不单单是星期三,还是二十四节气的小满! 2. 刚刚收到了520+1314的转账,可惜我不是刚刚! 3. 520你们宁愿当狗也不来跟我表白,这个血海深仇我先记下了! 4. 如果你单身,没关系,叫一声爸爸,以后就是一家人了! 5. 历史总是惊人的相似,前年520我一个人过,去年520我一个人过,今年520还是我一个人过! 6. 5月20号给我转账520元,你将在13月14号收到我的1314转账,稳赚不赔! 打住!言归正传,还是来看看怎么优雅地创建一个“对象”吧!0 2官方给的接口使用FunctionalInterface注解修饰接口,只有一个get方法! 每次调用get方法都会创建一个对象!
@FunctionalInterfacepublic interface Supplier {    /**     * Gets a result.     *     * @return a result     */    T get();}
02 深度解析如下列代码所示:使用Supplier创建对象,语法结构: 无参数:
1. Supplier instance = T::new;2. Supplier instance = () -> new T();
有参数:
1. Functionfun = T::new;    fun.apply("test");2. Function fun2 = str -> new T(str);    fun2.apply("test2");
‍注: 每次调用get方法都会创建一个对象,下面的代码中调用了两次get方法,打印的hashcode是不一样的!
public class TestSupplier {  public static void main(String[] args) {    //无参数1:    Supplier sup = TestSupplier::new;    sup.get();    sup.get();    //无参数2:    Supplier sup2 = () -> new TestSupplier();    sup2.get();    sup2.get();        //有参数1:    Functionfun = TestSupplier::new;    fun.apply("test");    //有参数2:    Function fun2 = str -> new TestSupplier(str);    fun2.apply("test2");  }   public TestSupplier() {    System.out.println(this.hashCode());  }    public TestSupplier(String str) {    System.out.println(this.hashCode() + ",参数:" + str);  }}

3e6d8e3250d6de87225ef2a75fba8847.gif

java新特性文章:

 java新特性之——这些Java9的新特性你用过几个?

 java新特性之——面试官老爱问的JAVA8 新特性


架构系列文章:

● 架构系列——限流算法介绍

● 架构系列——volatile的可见性、防止指令重排序以及不能保证原子性

● 架构系列——使用synchronized需要注意什么细节

● 架构系列——线程实现方式以及生命周期的探索

● 架构系列——并发、并行与多线程关系探索

● 架构系列——单体、分布式、集群与冗余的探索

● 架构系列——Java反射:框架设计的灵魂


面试系列文章:

● 所有程序员会面临的问题:程序员只能吃青春饭?

● 要准备多少东西去面试---java中高级面试总结(值得收藏)

● 最近的面试有感(7个方面)

63e046ded9ea4990946045be6f39e7a1.png你点的每个在看,我都认真当成了喜欢
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值