最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解java創(chuàng)建一個(gè)女朋友類(lèi)(對(duì)象啥的new一個(gè)就是)==建造者模式,一鍵重寫(xiě)

 更新時(shí)間:2019年04月18日 16:31:08   作者:nuoyanli  
這篇文章主要介紹了java建造者模式一鍵重寫(xiě),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

創(chuàng)建一個(gè)女朋友,她有很多的屬性,比如:性別,年齡,身高,體重,類(lèi)型等等,雖然每個(gè)女朋友都有這些屬性,但是每個(gè)人找女朋友的要求都是不一樣的,有的人喜歡男的,有的人喜歡女的,有的喜歡胖的,不同的人可以根據(jù)自己的喜好去建造不同的女朋友,我們不需要關(guān)心她是怎么建造的,我們只需要去指定她的屬性就行了

相比如文字解釋,我更習(xí)慣擼代碼來(lái)解釋,下面來(lái)一步步實(shí)現(xiàn)怎么用java來(lái)為你創(chuàng)建一個(gè)女朋友

首先定義一個(gè)女朋友類(lèi):

package nuoyanli;
 
/**
 * Created by ${nuoyanli} on 2019/4/7.
 */
 
public class GirlFriend {
  private String sex;//性別
  private int age;//年齡
  private int stature;//身高
  private int weight;//體重
  private String type;//類(lèi)型

按照我們以往的理解,要?jiǎng)?chuàng)建一個(gè)女朋友是不是要直接new出來(lái),我們可以通過(guò)構(gòu)造方法把屬性傳過(guò)去

例如:我對(duì)女朋友的要求只有一個(gè),是女的就行,定義一個(gè)構(gòu)造方法:

public GirlFriend(String sex) {
    this.sex = sex;
  }

然后再需要的時(shí)候來(lái)創(chuàng)建她:

 GirlFriend girlFriend = new GirlFriend("女");

如果我們要求性別和身高就要定義:

 public GirlFriend(String sex, int stature) {
    this.sex = sex;
    this.stature = stature;
  }

你想想每個(gè)人的要求都不一樣,你得創(chuàng)建多少個(gè)構(gòu)造方法,而且參數(shù)多了,可讀性很差比如:

GirlFriend girlFriend = new GirlFriend("女",19,170,90,"聲優(yōu)");

java有一個(gè)建造者模式:

建造一個(gè)GirlFriendBuilder類(lèi):

package nuoyanli;
 
/**
 * Created by ${nuoyanli} on 2019/4/7.
 */
 
public class GirlFriendBuilder {
   String sex;//性別
   int age;//年齡
   int stature;//身高
   int weight;//體重
   String type;//類(lèi)型
 
  public GirlFriendBuilder setSex(String sex) {
    this.sex = sex;
    return this;
  }
 
  public GirlFriendBuilder setAge(int age) {
    this.age = age;
    return this;
  }
 
  public GirlFriendBuilder setStature(int stature) {
    this.stature = stature;
    return this;
  }
 
  public GirlFriendBuilder setWeight(int weight) {
    this.weight = weight;
    return this;
  }
 
  public GirlFriendBuilder setType(String type) {
    this.type = type;
    return this;
  }
 
  /**
   *返回一個(gè)GirlFriend對(duì)象
   */
  public GirlFriend build() {
    return new GirlFriend(this);
  }
}

然后在GirlFriend類(lèi)里面構(gòu)造方法傳入GirlFriendBuilder對(duì)象:

public GirlFriend(GirlFriendBuilder builder) {
    this.sex = builder.sex;
    this.age = builder.age;
    this.stature = builder.stature;
    this.weight = builder.weight;
    this.type = builder.type;
  }

然后創(chuàng)建的時(shí)候:

GirlFriend girlFrie1nd = new GirlFriendBuilder()
        .setAge(19)
        .setSex("女")
        .setType("聲優(yōu)")
        .setStature(175)
        .build();

這樣就成功創(chuàng)建了一個(gè)女朋友,代碼的可讀性也挺高的

如果對(duì)這個(gè)女朋友不滿(mǎn)意,可以自定義屬性哦,由于筆者水平有限,并且找不到女朋友所以只能先new一個(gè)girFriend對(duì)象

以上所述是小編給大家介紹的java建造者模式一鍵重寫(xiě)詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java代碼執(zhí)行shell命令的實(shí)現(xiàn)

    Java代碼執(zhí)行shell命令的實(shí)現(xiàn)

    這篇文章主要介紹了Java代碼執(zhí)行shell命令的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Java自定義注解的詳解

    Java自定義注解的詳解

    這篇文章主要介紹了Java自定義注解的詳解的相關(guān)資料,Java注解提供了關(guān)于代碼的一些信息,但并不直接作用于它所注解的代碼內(nèi)容,需要的朋友可以參考下
    2017-08-08
  • Java 3D入門(mén)之基本圖形功能 附源碼

    Java 3D入門(mén)之基本圖形功能 附源碼

    Java3D API是Sun定義的用于實(shí)現(xiàn)3D顯示的接口。3D技術(shù)是底層的顯示技術(shù),Java3D提供了基于Java的上層接口。Java3D把OpenGL和DirectX這些底層技術(shù)包裝在Java接口中。這種全新的設(shè)計(jì)使3D技術(shù)變得不再繁瑣且可以加入到J2SE、J2EE的整套架構(gòu),故保證了Java3D技術(shù)強(qiáng)大的擴(kuò)展性
    2021-10-10
  • Java如何在Map中存放重復(fù)key

    Java如何在Map中存放重復(fù)key

    這篇文章主要介紹了Java如何在Map中存放重復(fù)key,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • SpringBoot_Cache自定義使用SimpleCacheManager方式

    SpringBoot_Cache自定義使用SimpleCacheManager方式

    這篇文章主要介紹了SpringBoot_Cache自定義使用SimpleCacheManager方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • IntelliJ IDEA使用教程從入門(mén)到上癮(2019圖文版)

    IntelliJ IDEA使用教程從入門(mén)到上癮(2019圖文版)

    這篇文章主要介紹了IntelliJ IDEA使用教程從入門(mén)到上癮(2019圖文版),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Java微信公眾平臺(tái)開(kāi)發(fā)(7) 公眾平臺(tái)測(cè)試帳號(hào)的申請(qǐng)

    Java微信公眾平臺(tái)開(kāi)發(fā)(7) 公眾平臺(tái)測(cè)試帳號(hào)的申請(qǐng)

    這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺(tái)開(kāi)發(fā)第七步,微信公眾平臺(tái)測(cè)試帳號(hào)的申請(qǐng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 基于spring?@Cacheable?注解的spel表達(dá)式解析執(zhí)行邏輯

    基于spring?@Cacheable?注解的spel表達(dá)式解析執(zhí)行邏輯

    這篇文章主要介紹了spring?@Cacheable?注解的spel表達(dá)式解析執(zhí)行邏輯,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java學(xué)習(xí)之如何進(jìn)行JSON解析

    Java學(xué)習(xí)之如何進(jìn)行JSON解析

    JSON(JavaScript?Object?Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,它算是JavaScript語(yǔ)言的一部分,與XML一樣都可以用于數(shù)據(jù)的存儲(chǔ)和傳輸,本文講給大家介紹如何進(jìn)行JSON解析,需要的朋友可以參考下
    2023-12-12
  • Java數(shù)組拷貝的幾種方法小結(jié)

    Java數(shù)組拷貝的幾種方法小結(jié)

    本文主要介紹了Java數(shù)組拷貝的幾種方法小結(jié),包括for循環(huán)、System.arraycopy()、Arrays.copyOf()、Arrays.copyOfRange()和clone()方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09

最新評(píng)論

襄樊市| 丽江市| 曲阳县| 昆明市| 洛扎县| 六枝特区| 罗城| 霍城县| 苗栗市| 合水县| 县级市| 册亨县| 武隆县| 沂水县| 嫩江县| 河间市| 马尔康县| 南雄市| 长宁区| 泸水县| 青州市| 承德市| 济宁市| 沂源县| 图木舒克市| 社会| 鹤山市| 历史| 陆川县| 汾阳市| 济源市| 乐都县| 泰宁县| 道孚县| 四平市| 通城县| 天津市| 西丰县| 伊川县| 昌宁县| 抚松县|