1

当我需要将类数据成员声明为公共时,是否有任何情况?这样的声明是否有出错的机会?

4

1 回答 1

1

需要?不。

任何数据访问都可以通过getter和setter来完成:(
以上说法的真实性可能取决于语言)

private member

public getMember()
  return member

public setMember(newValue)
  member = newValue

代替

public member

错误?不。好吧,除了必须更改代码以使用 getter 和 setter 之外。

想要?可能。

使用 getter 和 setter 的主要缺点是你的代码看起来多么漂亮——它的可读性和代码膨胀。

有关使用 getter 和 setter 的优势,请参阅此内容。

如果使用 getter 和 setter 分类类似于为您公开成员,那么在许多情况下您需要在其中一种访问中使用它。考虑一个具有Car类的人为示例。您想要获取windscreen成员变量的原因有很多。

于 2013-08-22T12:39:03.550 回答