欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解java创建一个女朋友类(对象啥的new一个就是)==建造者模式,一键重写

程序员文章站 2024-02-23 16:38:52
创建一个女朋友,她有很多的属性,比如:性别,年龄,身高,体重,类型等等,虽然每个女朋友都有这些属性,但是每个人找女朋友的要求都是不一样的,有的人喜欢男的,有的人喜欢女的,有...

创建一个女朋友,她有很多的属性,比如:性别,年龄,身高,体重,类型等等,虽然每个女朋友都有这些属性,但是每个人找女朋友的要求都是不一样的,有的人喜欢男的,有的人喜欢女的,有的喜欢胖的,不同的人可以根据自己的喜好去建造不同的女朋友,我们不需要关心她是怎么建造的,我们只需要去指定她的属性就行了

相比如文字解释,我更习惯撸代码来解释,下面来一步步实现怎么用java来为你创建一个女朋友

首先定义一个女朋友类:

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;//类型

按照我们以往的理解,要创建一个女朋友是不是要直接new出来,我们可以通过构造方法把属性传过去

例如:我对女朋友的要求只有一个,是女的就行,定义一个构造方法:

public girlfriend(string sex) {
    this.sex = sex;
  }

然后再需要的时候来创建她:

 girlfriend girlfriend = new girlfriend("女");

如果我们要求性别和身高就要定义:

 public girlfriend(string sex, int stature) {
    this.sex = sex;
    this.stature = stature;
  }

你想想每个人的要求都不一样,你得创建多少个构造方法,而且参数多了,可读性很差比如:

girlfriend girlfriend = new girlfriend("女",19,170,90,"声优");

java有一个建造者模式:

建造一个girlfriendbuilder类:

package nuoyanli;
 
/**
 * created by ${nuoyanli} on 2019/4/7.
 */
 
public class girlfriendbuilder {
   string sex;//性别
   int age;//年龄
   int stature;//身高
   int weight;//体重
   string type;//类型
 
  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;
  }
 
  /**
   *返回一个girlfriend对象
   */
  public girlfriend build() {
    return new girlfriend(this);
  }
}

然后在girlfriend类里面构造方法传入girlfriendbuilder对象:

public girlfriend(girlfriendbuilder builder) {
    this.sex = builder.sex;
    this.age = builder.age;
    this.stature = builder.stature;
    this.weight = builder.weight;
    this.type = builder.type;
  }

然后创建的时候:

girlfriend girlfrie1nd = new girlfriendbuilder()
        .setage(19)
        .setsex("女")
        .settype("声优")
        .setstature(175)
        .build();

这样就成功创建了一个女朋友,代码的可读性也挺高的

如果对这个女朋友不满意,可以自定义属性哦,由于笔者水平有限,并且找不到女朋友所以只能先new一个girfriend对象

以上所述是小编给大家介绍的java建造者模式一键重写详解整合,希望对大家有所帮助