今天看啥  ›  专栏  ›  程序员追风

Lambda 表达式到底会不会造成内存泄漏?

程序员追风  · 公众号  ·  · 2024-03-01 20:14
上方蓝色“程序员追风”,选择“设为星标”回复“资料”获取整理好的面试资料原文:blog.csdn.net/hbdatouerzi/article/details/1225341341、背景匿名内部类会持有外部类的引用,因此有造成内存泄漏的风险;那么Lambda 表达式是否会造成内存泄漏呢?2、匿名内部类 VS Lambda 表达式我们新建一个类TestInner,其中test方法里面包含一个Lambda表达式,test1方法里面包含一个匿名内部类public class TestInner {    public void test(){        new Thread(()->{            Log.i("测试","dddd");        }).start();    }    public void test1(){        new Thread(new Runnable() {            @Override            public void run() {                Log.i("测试","dddd1");            }        }).start();    }}我们将其编译成apk,然后查看编译后的产物匿名内部 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照