首页 > 解决方案 > 在java中使用new关键字而不定义变量

问题描述

以下代码用于在变量中创建类的对象:

ClassName obj = new ClassName();

但是如果我们不创建任何变量而只输入以下内容呢?

new ClassName();

当我使用它时,没有错误。但是当没有创建变量时它实际上做了什么?

标签: javaobjectinstantiation

解决方案


两种方法都创建一个对象,但第二种方法没有它的名称。

当您创建 ClassName 的实例时,您的第一种方法和第二种方法之间的区别在于,对于您的第一种方法,您实际上可以访问类中的变量和方法。

例如,

ClassName obj = new ClassName();
System.out.println(obj.x);

其中类名

class ClassName {
    public static int x = 2;
}

这种方法的好处是您可以访问类中的变量。如果您使用第二种方法,那么实例将没有名称,因此您将无法访问变量。


推荐阅读