gpt4 book ai didi

Java 在构造函数中泄漏 this

转载 作者:IT老高 更新时间:2023-10-28 21:02:31 25 4
gpt4 key购买 nike

为什么 IDE 会提示“在构造函数中泄漏 this”?我一直认为这只是不好的做法。但实际上我从来没有发现它为什么不好。

最佳答案

constructor(不是 Controller )中泄露 this 引用是很危险的,尤其是在多线程环境中。这是因为在构造函数调用完成之前,对象还没有完全构造。因此,从构造函数中泄漏 this 意味着外部世界可以访问尚未完全构造的对象。这不一定会导致单线程程序出现问题(虽然有可能,但在这种情况下问题更加明显)。但是如果 this 被泄露给其他线程,他们实际上可以在对象构造完成之前尝试对它做一些事情,这会导致微妙且难以发现的错误。

关于Java 在构造函数中泄漏 this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9851813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com