函数式接口
概念
@FunctionalInterface注解(可以选择不加)
语法约束,一旦使用该注解来定义接口,编译器将会强制检查该接口是否确实有且仅有一个抽象方法,否则将会报错。需要注意的是,即使不使用该注解,只要满足函数式接口的定义,这仍然是一个函数式接口,使用起来都一样
函数式编程
Lambda的延迟执行
这段代码存在问题:无论级别是否满足要求,作为 log 方法的第二个参数,三个字符串一定会首先被拼接并传入方 法内,然后才会进行级别判断,如果级别不符合要求,那么字符串的拼接操作就白做了,存在性能浪费