引用构造器练习

简介: 引用构造器练习

一、练习需求

引用构造器,其实就是引用构造方法


格式:类名::new


范例:Student::new


1、定义一个类(Student),里面有两个成员变量(name,age)


       并提供无参构造方法和带参构造方法,以及成员变量对应的get和set方法


2、定义一个接口(StudentBuilder),里面定义一个抽象方法


       Student build(Student name,int age);


3、 定义一个测试类(StudentDemo),在测试类中提供两个方法


       一个方法是:useStudentBuilder(StudentBuilder s)


       一个犯方法是主方法,在主方法中调用useStudentBuilder方法

二、代码

Student类:

public class Student {
    private String name;
    private int age;
    public Student() {
    }
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
}

StudentBuilder接口:

public interface StudentBuilder {
    Student build(String name, int age);
}

StudentDemo测试类:

public class StudentDemo {
    public static void main(String[] args) {
        //在主方法中调用useStudentBuilder方法
        useStudentBuilder((name, age) -> new Student(name, age));
        //引用构造器
        useStudentBuilder(Student :: new);
        //Lambda表达式被构造器替代的时候,它的形式参数全部传递给构造器作为参数
    }
    private static void useStudentBuilder(StudentBuilder s) {
        Student sb = s.build("林青霞", 30);
        System.out.println(sb.getName() + "," + sb.getAge());
    }
}

三、运行结果

830894c2b69c4782957836d02e1c0933.png

目录
相关文章
|
存储 Cloud Native 编译器
C++ 对象生成:构造函数
C++ 对象生成:构造函数
|
1月前
|
C++
C++构造函数初始化类对象
C++构造函数初始化类对象
15 0
|
3月前
|
存储 Java 程序员
08 Java面向对象基础(对象与类+实例变量与方法+构造方法+this关键字)
08 Java面向对象基础(对象与类+实例变量与方法+构造方法+this关键字)
73 4
|
5月前
|
Java
JavaSE——JDK8新特性(2/2):方法引用(静态方法的引用、实例方法的引用、特定类型的方法引用、构造器引用)
JavaSE——JDK8新特性(2/2):方法引用(静态方法的引用、实例方法的引用、特定类型的方法引用、构造器引用)
32 0
|
6月前
|
编译器 C++
30利用构造函数对类对象进行初始化
30利用构造函数对类对象进行初始化
46 0
方法引用符、引用类方法、引用对象的实例方法、引用类的实例方法及引用构造器
方法引用符、引用类方法、引用对象的实例方法、引用类的实例方法及引用构造器
91 0
|
缓存 Dart 安全
Dart中的类——初始化列表、命名构造器、factory构造器、常量构造器、构造器私有化、get和set方法、枚举
Dart中的类——初始化列表、命名构造器、factory构造器、常量构造器、构造器私有化、get和set方法、枚举
|
Java C++
C++类中在构造器中调用本类的另外构造器
C++类中在构造器中调用本类的另外构造器
98 0
学生类-构造函数
学生类-构造函数
174 0