何时是使用“new”关键字的适当时间?

2022-09-02 11:48:22

何时有必要在 Java 中使用关键字。我知道当你创建一个对象的实例时,你应该使用它,就像这样:new

TextView textView = new TextView(this);

有时在代码中,我注意到没有使用,我感到困惑。在这行代码中:new

    AssetManager assetManager = getAssets();

为什么不像这样创建资产管理器的实例:

AssetManager assetManager = new AssetManager();

那么它被设置为等于 getAssests()?

何时应使用?new

谢谢!


答案 1

首次显式创建对象时,可以使用 new 关键字。然后不需要使用 getter 方法 new 获取对象,因为该对象已存在于内存中,因此不需要重新创建。

如果您想更详细地描述新的访问oracle文档

如果对象为 null,则需要 “new” 关键字(这对于未初始化很感兴趣)。

编辑:

在当前情况下,这将始终打印“需要新”。

Object mObj = null;
if (mObj == null)
    System.out.println("needs new");
else
    System.out.println("does NOT need new");

OUTPUTS: needs new

因此,要修复它,您将执行如下操作:

Object mObj = new Object();
if (mObj == null)
    System.out.println("needs new");
else
    System.out.println("does NOT need new");
OUTPUTS: does NOT need new

在这种情况下,我们总是会看到“不需要neW”


答案 2

在java中,你总是必须用来实例化对象(嗯,几乎总是)。用你检索一个已经创建的。我想你的问题来自分配动态内存的c ++,但是由于java只有动态对象,所以总是需要新的。newgetAssests()new