兴仁市建设局网站,在平台企业网站推广怎么做,wordpress显示10篇文章,招工最新招聘信息1. 函数式接口 当一个接口中只有一个非 default 修饰的方法#xff0c;这个接口就是一个函数式接口用
FunctionalInterface 标注
1#xff09;只有一个抽象方法
FunctionalInterface
public interface MyInterface {void print(int x);
}
2#xff09;只有一个抽象方法和…1. 函数式接口 当一个接口中只有一个非 default 修饰的方法这个接口就是一个函数式接口用
FunctionalInterface 标注
1只有一个抽象方法
FunctionalInterface
public interface MyInterface {void print(int x);
}
2只有一个抽象方法和一个 default 方法
FunctionalInterface
public interface MyInterface {void print(int x);// 1.8 之后接口可以有默认实现方法default String getValue(){return value;}
}
3只有一个抽象方法和多个 default 方法
FunctionalInterface
public interface MyInterface {void print(int x);// 1.8 之后接口可以有默认实现方法default String getValue(){return value;}default int getAge(int age){return age;}
}
2. 使用 lambda 表达式返回函数式接口对象 当使用函数式接口中的的唯一非 default 方法时传统的做法是先写一个接口的实现类给出接口中抽象方法的具体实现然后 new 一个该类的实例化对象在调用重写后的方法步骤比较繁琐lambda 可以快速实现该方法的实现和调用
创建一个接口
FunctionalInterface
public interface MyInterface {void print(int x);// 1.8 之后接口可以有默认实现方法default String getValue(){return value;}
}
使用 lambda 表达式返回一个该接口对象并给出该方法的具体实现
public class MyClass {public static void main(String[] args) {MyInterface myinterface x - System.out.println(x x);myinterface.print(12344);}
}lambda 表达式语法
语法格式: () - {};# () 中代表的是接口中抽象方法的参数值
# {} 中代表该方法的具体实现
# () - {}; 的返回值是接口的一个实例化对象
3. Runnable 接口 Runnable 接口是用来创建线程的一个接口是一个典型的函数式接口 源码如下 通过 Lambda 表达式创建线程
public class Test1{public static void main(String[] args) {Runnable runnable () - System.out.println(this a thread);runnable.run();}
}
4. Callable 接口 Callable 接口是用来创建线程的一个接口是一个典型的函数式接口 源码如下 通过 Lambda 表达式创建线程
public class MyCallable {public static void main(String[] args) throws Exception {CallableInteger callable () - {System.out.println(this a thread);return 1;};callable.call();}
}