首页 > 编程语言 >简单学懂链式编程

简单学懂链式编程

时间:2023-04-22 15:11:51浏览次数:38  
标签:String 对象 gender 编程 Person 学懂 链式 public name

简单学懂链式编程

一句话定义

链式编程是一种编程风格,它允许在同一个对象上通过多个方法的调用链实现一系列操作,从而简化代码,提高可读性,和代码的可维护性。

一个流程看懂

创建对象 -> 连续调用对象方法 -> 返回对象本身 -> 使用对象方法获取属性或执行其他操作

示例

public class Person {
    private String name;
    private int age;
    private String gender;

    public Person setName(String name) {
        this.name = name;
        return this;//返回this对象
    }

    public Person setAge(int age) {
        this.age = age;
        return this;
    }

    public Person setGender(String gender) {
        this.gender = gender;
        return this;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public String getGender() {
        return gender;
    }

    public static void main(String[] args) {
        // 链式编程
        Person person = new Person()
                .setName("张三")
                .setAge(20)
                .setGender("男");

        // 调用对象方法
        String name = person.getName();
        int age = person.getAge();
        String gender = person.getGender();

        // 输出结果
        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
        System.out.println("性别:" + gender);
    }
}

在上面的代码中,我们

  1. 创建了一个Person类,并定义了setName()setAge()setGender()方法来设置对象的属性,并返回Person对象本身,以便实现方法调用链。
  2. 然后,我们使用链式编程的方式创建一个Person对象并连续调用setName()setAge()setGender()方法来设置对象属性,最终返回了一个已经设置好属性的Person对象。
  3. 最后,我们调用getName()getAge()getGender()方法获取对象的属性并输出。

通过这个示例,可以看到链式编程的基本流程是:创建对象 -> 连续调用对象方法 -> 返回对象本身 -> 使用对象方法获取属性或执行其他操作。

标签:String,对象,gender,编程,Person,学懂,链式,public,name
From: https://www.cnblogs.com/salt-baked-universe/p/17330628.html

相关文章

  • 简单学懂LambdaQueryWrapper
    简单学懂LambdaQueryWrapper一句话定义通过调用构造方法返回一个LambdaQueryWrapper对象,在对象上使用链式编程、Lambda表达式和链式调用的方式,灵活地实现了SQL查询条件构造和简化了SQL查询代码的编写。一个流程看懂创建一个LambdaQueryWrapper对象->使用Lambda表达式或方法......
  • 实验3 控制语句与组合数据类型应用编程
    实验任务1task1.py实验源码:importrandomprint('用列表存储随机整数:')lst=[random.randint(0,100)foriinrange(5)]print(lst)print('\n用集合存储随机整数:')s1={random.randint(0,100)foriinrange(5)}print(s1)print('\n用集合存储随机整数:')s2......
  • 试验任务3 控制语句与组合数据类型应用编程
    1.试验任务11importrandom23print('用列表存储随机整数:')4lst=[random.randint(0,100)foriinrange(5)]5print(lst)67print('\n拥集合存储随机整数:')8s1={random.randint(0,100)foriinrange(5)}9print(s1)1011print('\n用集......
  • 04-目录---Linux编程
    第01章:Linux常用命令vim的使用:链接vimrc:链接shell命令行操作:链接hitory历史命令:链接安装较新vim:链接安装plug-vim:链接安装更新的cmake:链接安装更新的gcc:链接安装python3.8:链接第02章:Linux编译调试基础makefile:链接gdb调试:链接库的制作:链接第03章:标准IOfopen与fclos......
  • 2023.4.21编程一小时打卡
    一、问题描述: 定义时钟类,单目运算符前置++和后置++重载的成员函数:以时钟类的对象为操作数。对于前置单目运算符,重载函数没有参数,对于后置单目运算符,重载函数有一个int型参数。二、解题思路: 首先定义一个时钟类作为基类,再定义重载运算符的成员函数,最后在主函数中实现时钟类的......
  • shell 脚本编程进阶之函数
    一、定义函数1、语法#语法一:func_name(){...函数体...}#语法二:functionfunc_name{...函数体...}#语法三:functionfunc_name(){...函数体...} 在函数中定义本地变量,local name=NAME2、查看定义的函数#查看当前已定义的函数名declare-F#查看当前已定义的函数定义declare-f#......
  • 编程打卡:C语言趣味编程习题做
    编程打卡:C语言趣味编程习题做完数问题描述完数是因子相加等于它本身的数字,求一个范围内的完数。设计思路遍历这个范围内的数字,求它的因子,然后判断是否为完数即可。流程图graphA[开始]-->B[inputN,i=2]-->C{i<=N}--Yes-->D[j=1,sum=0]-->E{j<=i/2}--Yes-->F{i%j==0}--Yes--......
  • 实验3 控制语句与组合数据类型应用编程
    1.实验任务1task1.py1importrandom23print('用列表存储随机整数:')4lst=[random.randint(0,100)foriinrange(5)]5print(lst)67print('\n用集合存储随机整数:')8s1={random.randint(0,100)foriinrange(5)}9print(s1)1011print(......
  • WCF教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介Windows通讯开发平台(WindowsCommunicationFoundation,简称WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows通讯开发平台。整合了原有的windows通讯的.netRemoting,WebService,Socket的机制,并融合有HTTP和FTP的相关技术。是Windows平台上开发分布......
  • 编程一小时2023.4.21
    1.classCar:publicVehicle{public:Car(stringno,intguest,intweight):Vehicle(no){m_no=no;m_guest=guest;m_weight=weight;}virtualintfee(){return(m_guest*8+m_weight*2);}private:stringm_no;intm_guest,m_weight;};classTruck:publicVehicle{public:Truck(......