国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

JAVA中實現鏈式操作(方法鏈)的簡單例子

2019-11-26 15:31:42
字體:
來源:轉載
供稿:網友

在使用jQuery時候,我們經常會看到或者使用到方法鏈,例如:

復制代碼 代碼如下:

$("#p1").css("color","red").slideUp(2000).slideDown(2000);

這段代碼的意思是選擇器選擇id為p1的html標簽,顏色變紅,之后slideup,再slidedown。

自然是可以將這幾個方法分開寫,但是不分開的話不僅有很好的易讀性,代碼量也會有減少,那么何樂而不為?
這種調用函數的方式在jQuery中稱為“Chaining”,原理也很簡單:能夠chaining的方法調用后返回對象本身即可。

下面用java代碼做個演示:

不使用chaining:

Persion.java:

復制代碼 代碼如下:

public class Persion {
    private int id;
    private String name;
    private String phoneNumber;
    private String address;
    public  Persion() {

    }
    public void setId(int id) {
        this.id = id;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    public void printId() {
        System.out.println(this.id);
    }
    public void printName() {
        System.out.println(this.name);
    }
    public void printPhoneNumber() {
        System.out.println(this.phoneNumber);
    }
    public void printAddress() {
        System.out.println(this.address);
    }
}


Test.java:
復制代碼 代碼如下:

public class Test {
    public static void main(String[] args) {
        Persion persion1 = new Persion();
        persion1.setId(3);
        persion1.setName("John");
        persion1.setPhoneNumber("1111111");
        persion1.setAddress("US");
        persion1.printId();
        persion1.printName();
        persion1.printPhoneNumber();
        persion1.printAddress();
    }
}

使用chaining:

Persion.java:

復制代碼 代碼如下:

public class Persion {
    private int id;
    private String name;
    private String phoneNumber;
    private String address;
    public  Persion() {

    }
    public Persion setId(int id) {
        this.id = id;
        return this;
    }
    public Persion setName(String name) {
        this.name = name;
        return this;
    }
    public Persion setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
        return this;
    }
    public Persion setAddress(String address) {
        this.address = address;
        return this;
    }
    public Persion printId() {
        System.out.println(this.id);
        return this;
    }
    public Persion printName() {
        System.out.println(this.name);
        return this;
    }
    public Persion printPhoneNumber() {
        System.out.println(this.phoneNumber);
        return this;
    }
    public Persion printAddress() {
        System.out.println(this.address);
        return this;
    }
}


Test.java:
復制代碼 代碼如下:

public class Test {
    public static void main(String[] args) {
        Persion persion1 = new Persion();
        persion1.setId(3).setName("John")
                .setPhoneNumber("1111111").setAddress("US");
        persion1.printId()
                .printName()
                .printPhoneNumber()
                .printAddress();
    }
}


好詭異的感覺~哈哈!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 惠安县| 兴化市| 永川市| 长白| 静海县| 佳木斯市| 云和县| 阜新| 舞钢市| 宝坻区| 萍乡市| 宣城市| 六盘水市| 孝义市| 略阳县| 安西县| 资中县| 东辽县| 纳雍县| 郯城县| 敖汉旗| 揭西县| 巴东县| 张家口市| 邵东县| 斗六市| 武夷山市| 安岳县| 崇礼县| 佳木斯市| 缙云县| 大兴区| 莎车县| 庆城县| 长垣县| 黎城县| 庄河市| 光山县| 河北省| 九江市| 阳春市|