JDK8新特性☞方法构造方法的引用
2017-06-21 13:32
267 查看
一:创建实体类对象
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(per
4000
son.getLastName());
}
}
三:测试结果
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(per
4000
son.getLastName());
}
}
三:测试结果
相关文章推荐
- JDK8-练习题使用方法引用、构造引用、数组引用改造(五)
- JDK8-方法引用 ,构造引用,数组引用(四)
- JDK8新特性之方法引用
- Android 使用Java8新特性之"方法引用"
- 【Java】Java中类的构造方法特性
- JDK1.8新特性之方法引用(Method References)
- java8新特性2-方法引用
- Java8新特性——方法和构造函数引用
- jdk8 特性例子 接口默认方法 default method
- 随堂笔记7.29:对象,接口,构造方法,引用数据类型,抽象类,抽象方法-------1
- Java8 新特性之三---------方法引用
- Java 8新特性方法引用详细介绍
- (38)面向对象的构造与析构方法(39)面向对象的三大特性之一封装性
- JAVA8新特性之:方法引用
- JDK8新特性:使用Method References实现方法复用,简化lambda表达式
- Java笔记——Java8特性之Lambda、方法引用和Streams
- Java构造方法与引用
- 出现sstream:724: 错误:C2248:的原因是流不允许拷贝构造,在使用流的方法里修改为&(引用)即可
- Java面向对象02-方法的签名,重载,构造方法和引用类型数组
- Java 8新特性:新语法方法引用和Lambda表达式及全新的Stream API