Java之间的区别{Object a = new Object(); a.getVariable()}和{new Object().getVariable()}

sir*_*red 1 java oop class object instantiation

我不知道它之前是否被询问(我搜索但找不到)

以下2个代码块之间有什么区别吗?

1:

// Let's say we want to get variable from non-static object
Object a = new Object();
int varWeWant = a.getVariable();
Run Code Online (Sandbox Code Playgroud)

2:

int varWeWant = new Object().getVariable();
Run Code Online (Sandbox Code Playgroud)

如你所见,第二个选项是单行代码,我知道java,两个代码首先创建对象并通过方法检索变量,但我不是java专家,所以我想知道他们是否有任何差异?

对不起,如果这是一个愚蠢的问题:D我只是想知道这个问题太久了

感谢名单

Car*_*ate 5

第一个创建一个可以在以后引用的对象,然后在其上调用一个方法.

第二个创建一个临时对象,只能用于调用该单个方法.

真的,如果你正在使用第二种方式,你应该首先询问对象是否必要.除非您使用Builder或类似模式,否则将该方法设置为独立函数可能更有意义.