欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實(shí)體類實(shí)現(xiàn)鏈?zhǔn)讲僮鲗?shí)例解析

 更新時(shí)間:2019年12月12日 09:18:02   作者:Davion2017  
這篇文章主要介紹了Java實(shí)體類實(shí)現(xiàn)鏈?zhǔn)讲僮鲗?shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Java實(shí)體類實(shí)現(xiàn)鏈?zhǔn)讲僮鲗?shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

原來(lái)是這么寫bean的,單純的使用get、set方法,再加一個(gè)toString

package Model;

/**
 * @author: Davion
 * @date: 2019/12/11
 * @description:
 */
public class User {
  private Integer id;
  private String name;

  @Override
  public String toString() {
    return "User{" +
        "id=" + id +
        ", name='" + name + '\'' +
        '}';
  }

  public Integer getId() {
    return id;
  }

  public void setId(Integer id) {
    this.id = id;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}

然后使用的使用就是不斷的set

import Model.User;

/**
 * @author: Davion
 * @date: 2019/12/11
 * @description:
 */
public class Main {
  public static void main(String[] args) {
    User user = new User();
    user.setId(1);
    user.setName("Davion");
    System.out.println(user);
  }
}

再簡(jiǎn)單點(diǎn)就是使用Lombok自動(dòng)生產(chǎn)get/set方法,當(dāng)然今天說(shuō)的不是Lombok的優(yōu)點(diǎn),雖然是真的好用

但是今天突然看到一些新的操作:鏈?zhǔn)絙ean,具體如下,

修改User類如下:

package Model;

/**
 * @author: Davion
 * @date: 2019/12/11
 * @description:
 */
public class User {
  private Integer id;
  private String name;

  @Override
  public String toString() {
    return "User{" +
        "id=" + id +
        ", name='" + name + '\'' +
        '}';
  }

  public Integer getId() {
    return id;
  }

  public User setId(Integer id) {
    this.id = id;
    return this;
  }

  public String getName() {
    return name;
  }

  public User setName(String name) {
    this.name = name;
    return this;
  }
}

可以看到,和原來(lái)的區(qū)別就是修改了set方法,原來(lái)是沒(méi)有返回值,直接是設(shè)置某個(gè)屬性,但現(xiàn)在的返回類型是模型本省,返回值是this,

重點(diǎn)來(lái)了,接著客戶端使用的時(shí)候是這樣的:

import Model.User;

/**
 * @author: Davion
 * @date: 2019/12/11
 * @description:
 */
public class Main {
  public static void main(String[] args) {
    User user = new User();
    user.setId(1).setName("Davion");
    System.out.println(user);
  }
}

因?yàn)榉祷貙?duì)象是this,所以可以接著使用當(dāng)前模型的所有方法

這樣的鏈?zhǔn)讲僮髂芄?jié)省很多時(shí)間,而且也直觀簡(jiǎn)潔了很多,而且對(duì)原來(lái)的寫法也沒(méi)有任何影響

因?yàn)槠綍r(shí)都是使用Lombok的,所以不會(huì)自己寫get/set方法,那鏈?zhǔn)讲僮饔衷趺词褂肔ombok實(shí)現(xiàn)呢,

眾所周知,Lombok是使用注解的方式,讓代碼更簡(jiǎn)潔,同理,那么要Lombok實(shí)現(xiàn)鏈?zhǔn)絙ean,應(yīng)該也是使用相應(yīng)的注解

這個(gè)注解就是 @Accessors(chain = true),意思是訪問(wèn)器允許鏈?zhǔn)讲僮鳎?那么現(xiàn)在代碼就是:

package Model;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * @author: Davion
 * @date: 2019/12/11
 * @description:
 */
@Accessors(chain = true)
@Data
public class User {
  private Integer id;
  private String name;
}

客戶端代碼不需要變,這樣就實(shí)現(xiàn)了一個(gè)鏈?zhǔn)絙ean

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java中jvm逃逸問(wèn)題分析

    java中jvm逃逸問(wèn)題分析

    本篇文章給大家詳細(xì)總結(jié)了java中jvm逃逸問(wèn)題的相關(guān)內(nèi)容,有興趣的朋友可以根據(jù)小編一起學(xué)習(xí)下。
    2018-02-02
  • SpringBoot使用Nacos配置中心的實(shí)現(xiàn)

    SpringBoot使用Nacos配置中心的實(shí)現(xiàn)

    這篇文章主要介紹了SpringBoot使用Nacos配置中心的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • SpringBoot2整合JTA組件實(shí)現(xiàn)多數(shù)據(jù)源事務(wù)管理

    SpringBoot2整合JTA組件實(shí)現(xiàn)多數(shù)據(jù)源事務(wù)管理

    這篇文章主要介紹了SpringBoot2整合JTA組件實(shí)現(xiàn)多數(shù)據(jù)源事務(wù)管理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 詳解Maven 搭建spring boot多模塊項(xiàng)目(附源碼)

    詳解Maven 搭建spring boot多模塊項(xiàng)目(附源碼)

    這篇文章主要介紹了詳解Maven 搭建spring boot多模塊項(xiàng)目(附源碼),具有一定的參考價(jià)值,有興趣的可以了解一下
    2017-09-09
  • java實(shí)現(xiàn)的統(tǒng)計(jì)字符算法示例

    java實(shí)現(xiàn)的統(tǒng)計(jì)字符算法示例

    這篇文章主要介紹了java實(shí)現(xiàn)的統(tǒng)計(jì)字符算法,涉及java針對(duì)字符的遍歷、判斷、運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下
    2017-10-10
  • Java編程實(shí)現(xiàn)判斷網(wǎng)上鄰居文件是否存在的方法

    Java編程實(shí)現(xiàn)判斷網(wǎng)上鄰居文件是否存在的方法

    這篇文章主要介紹了Java編程實(shí)現(xiàn)判斷網(wǎng)上鄰居文件是否存在的方法,涉及Java針對(duì)路徑轉(zhuǎn)換及字符串操作的相關(guān)技巧,需要的朋友可以參考下
    2015-10-10
  • 詳解JavaFX桌面應(yīng)用開(kāi)發(fā)-Group(容器組)

    詳解JavaFX桌面應(yīng)用開(kāi)發(fā)-Group(容器組)

    這篇文章主要介紹了JavaFX桌面應(yīng)用開(kāi)發(fā)-Group(容器組),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Java實(shí)現(xiàn)跳轉(zhuǎn)到指定頁(yè)面的方法小結(jié)

    Java實(shí)現(xiàn)跳轉(zhuǎn)到指定頁(yè)面的方法小結(jié)

    在Java中,實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)主要涉及到Web開(kāi)發(fā),而這通常通過(guò)使用Java的Web框架(如Servlet、Spring MVC)來(lái)完成,下面講解一下如何在不同的Java Web框架中實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn),文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-05-05
  • java實(shí)現(xiàn)Img與PDF相互轉(zhuǎn)換

    java實(shí)現(xiàn)Img與PDF相互轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)Img與PDF相互轉(zhuǎn)換的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Java設(shè)計(jì)模式七大原則之開(kāi)閉原則詳解

    Java設(shè)計(jì)模式七大原則之開(kāi)閉原則詳解

    開(kāi)閉原則,又稱為OCP原則,即一個(gè)軟件實(shí)體如類,模塊和函數(shù)應(yīng)該對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉。本文將詳細(xì)介紹Java設(shè)計(jì)模式七大原則之一的開(kāi)閉原則,需要的可以參考一下
    2022-02-02

最新評(píng)論