一:创建实体类对象
public class Person {
private String firstName;
private String lastName;
public Person() {
}
public Person(String firstName, String lastName) {
super();
this.firstName = firstName;
this.lastName = lastName;
}
@Override
public String toString() {
return "Person [firstName=" + firstName + ", lastName=" + lastName + "]";
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
二:创建接口及测试
/**
* JDK1.8新特性☞方法与构造方法引用
* @author Administrator
*JDK8允许使用::关键字来传递方法或者构造函数,
*我们只需要使用Person::new 来获取person构造函数的引用
* @param <F>
* @param <T>
*/
@FunctionalInterface
public interface Convert<F, T> {
T convert(F to);
public static void main(String[] args) {
Convert<String, Integer> convert=Integer::valueOf;
Integer integer = convert.convert("123");
System.out.println(integer);
PersonFactory<Person> personFactory=Person::new;
Person person = personFactory.create("zhang", "san");
System.out.println(person);
System.err.println(person.getFirstName());
System.err.println(person.getLastName());
}
}
三:测试结果