java裏爲什麼要set/get方法?

  今天在刷掘金的時候,看到一篇文章 Java Getter/Setter “防坑指南” 來了 裏面有說道:

通過使用 Getter/Setter 方法,變量的訪問(get)和更新(set)將變得可控。考慮以下 Setter 方法的代碼

public void setName(String name) {
    if (name == null || "".equals(name)) {
        throw new IllegalArgumentException();
    }
    this.name = name;
}

  感覺有點不對勁啊,因爲之前的公司,都是禁止在set/get方法裏添加任何邏輯的,實體類就是單純的實體類,不做任何的邏輯處理,任何。

  既然文章的論據不充分,那麼java裏到底是爲何需要set/get方法呢?而且還已經成爲一種javaer的常識了
  網上有好幾個說法,有的說是爲了體現java語言的封裝特性、有的說是爲了安全,有的說是爲了符合規範,都說的不是很到位。
  其實,使用set/get就是爲了對變量的控制
  假如有一個屬性,可以提供給外部查看,但是禁止修改,這樣只需要提供get(),不提供set()即可。如果使用對象.屬性的方式,是無法做到的。另外,spring框架裏,實體類都是有生成set/get的,所以這也形成了一種規範了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章