gpt4 book ai didi

Java:对象的默认值null更好

转载 作者:行者123 更新时间:2023-12-02 07:52:22 26 4
gpt4 key购买 nike

第一种情况:有一个类将另一个类作为其数据成员。当这个类实例化后,我们应该如何处理数据成员?

  • (A) 在构造函数中: this.anotherClass = new AnotherClass();
  • (B) 将其保留为空,无需实例化它。

第二种情况:有一个类以 ArrayList 作为其数据成员。当实例化这个类时,我们应该如何处理ArrayList?

  • (A) 在构造函数中: this.bulidingList = new ArrayList< Building >();
  • (B) 将其保留为空,无需实例化它。

第三种情况:例如,当我们创建一个返回类型为集合的方法时

public ArrayList< Building > getBuildingList(){ /// Bah Bah Bah.. }

如果没有 Building,我们应该返回空的 ArrayList "new ArrayList< Building >()""或 null

最佳答案

我不想使用 null 以避免潜在的 NullPointerException。为了避免创建不必要的对象,您可以构造一个要返回的静态实例,只要它是不可变的。对于空的ArrayList,您可以使用Collections.emptyList()来为您完成此操作。

最终,由您决定如何定义 API 的工作方式。无论哪种方式,您都应该清楚地记录下来,以便调用者知道会发生什么。

关于Java:对象的默认值null更好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6107199/

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