gpt4 book ai didi

java - 具有不同返回类型的 setter/getter 是否符合 setter/getter 的条件?

转载 作者:行者123 更新时间:2023-11-29 10:05:24 24 4
gpt4 key购买 nike

我有一个变量叫做

List<String> names;

如果我有这样的方法


Iterator getNames()
{
return names.iterator();
}

它在技术上仍然是一个 getter 方法,因为我将它更改为迭代器吗?

最佳答案

尽管 JDK 允许这样做,但这样做并不是一个好主意。

一方面,有一些基于您的方法命名的约定,这些约定对它们有一些依赖性。

  1. JavaBean 对象使用 getter 和 setter 来设置 bean 属性。如果他们不遵守约定,程序就会失败。参见 JavaBeans spec, section 8.3.1

  2. JSON 对象 - JSONObject 类在构造函数中使用访问器方法。请参阅:http://www.json.org/javadoc/org/json/JSONObject.html#JSONObject(java.lang.Object )

  3. 如果某些 JPA 实现具有多个名称相同但返回类型不同的 getter,它们将错误地处理您的实体类。

我敢打赌有更多的依赖关系,但即使这些不适用于您的解决方案,为了可读性,遵循约定仍然是明智的。您不希望任何其他开发人员在将来某个时候因为违反标准而诅咒您:)

关于java - 具有不同返回类型的 setter/getter 是否符合 setter/getter 的条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9747291/

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