问题描述
- 关于java创建对象的问题。
-
有B a(){};
1、B b = new B();
b=a();
2、B b = a();
这两种有什么区别?哪一个更好呢?希望能详细解释一下,谢谢。
解决方案
好比
int a() { return 1; }
int x = 0;
x = a();
其实显然让x=0是多此一举,直接int x = a();就可以了。
你的代码更糟,因为new一个对象的开销更大。
解决方案二:
第二种更好。因为new B();就你的代码来说根本没用到。
解决方案三:
很显然第二个好。
第一种情况(修改一下):
B b; // 无用的初始化= new B()
b=a();
第二种情况:
B b = a(); // 创建对象的时候直接初始化
解决方案四:
第二种好,二是对一的代码优化
时间: 2024-09-17 04:44:19