「Java」從Bean類實例化開始,增強自己代碼的可讀性

最近小編在看書,想多讀點書,加多點肚子裡的墨水,好提高下自己的編碼水平,所以本來從不喜歡讀書的我,就拿起了書本,這不,剛看兩個條目,就有耳目一新的感覺,也為工作上帶來了便利。

題外話多了,那麼下面,就給大家介紹下三種實例化的方法吧。

構造方法

JDK的實例化方式,或許大家都習慣用這種方式多吧,這就不多說了,直接上代碼

  • People類
「Java」從Bean類實例化開始,增強自己代碼的可讀性

People類

  • 調用

People people = new People();

People people = new People(58.4, 178.0);

People people = new People(58.4, 178.0, 25);

People people = new People(58.4, 178.0, 25, "programer");

靜態工廠類

這個方式的優點書上列了四項:

  1. 它們有名稱,可以區分實例化的情況
  2. 不必每次調用它們的時候都創建一個新的對象
  3. 它們可以返回原返回類型的任何子類型的對象
  4. 在創建參數化類型實例的時候,它們使代碼變得更加簡潔

但是也列出了兩個缺點:

  1. 類如果不含公有的或者受保護的構造器,就不能被子類化
  2. 它們與其他的靜態方法實際上沒有任何區別
  • People類
「Java」從Bean類實例化開始,增強自己代碼的可讀性

People類

  • 調用

People people = People.getInstance();

People people = People.getWHInstance(58.4, 178.0);

People people = People.getWHAInstance(58.4, 178.0, 25);

People people = People.getInstance(58.4, 178.0, 25, "programer");

構建器

相比較於之前的方式,這種方式讓人覺得很巧妙(額,這個小編是這麼覺得的)。

不妨來了解下這樣的場景,在私有變量比較多的情況下:

  • 如果使用構造器,那麼我們就需要傳入一長串的參數,靜態工廠類亦然
  • 如果你不介意那一長串的參數,那麼你也會在傳參的時候需要慢慢細讀“第幾位的參數對應哪一個私有變量”

那麼怎麼樣的方式可以解決這種場景呢?請看以下代碼:

  • People類

在私有變量比較多的情況下

「Java」從Bean類實例化開始,增強自己代碼的可讀性

People類

  • 調用

People people = People.getInstance().weight(58.4).height(178.0).age(25).job("programer");

第三種方式,小編並沒有按照書上所寫的那種方式編寫,而是以構建器的思路自己的編碼方式來展示,小編覺得更加簡潔易懂。

另外呢,小編的水平有限,如果哪裡寫得不對,歡迎大家指出,同時,如果喜歡小編寫的文章,也歡迎大家點一波關注,謝謝。


分享到:


相關文章: