如何优雅的将文件转换为字符串(环绕执行模式行为参数化函数式接口|Lambda表达式)

首先我们讲几个概念:

环绕执行模式:

简单的讲,就是对于OI,JDBC等类似资源,在用完之后需要关闭的,资源处理时常见的一个模式是打开一个资源,做一些处理,然后关闭资源,这个设置和清理阶段类似,并且会围绕着执行处理的业务逻辑。这就是环绕执行模式

行为参数化:

函数式编程的一种思想,通过把代码包装为参数传递行为,即把代码逻辑包装为一个参数,传到方法里。

Lambda表达式:

Lambda表达式理解为简洁的表示可传递的匿名函数的一种方式,它没有名称,但它有函数体,参数列表,返回类型。可以抛出一个异常类型。包装代码逻辑为参数即使用Lambda表达式

函数式接口:

本质上是只有一个抽象方法的普通接口,可以被隐式的转换为Lambda表达式,需要用注解定义(@FunctionalInterface)默认方法和静态方法可以不属于抽象方法,可以在函数式接口中定义

如果函数式接口中额外定义多个抽象方法那么这些抽象方法签名必须和Object的public方法一样,接口最终有确定的类实现, 而类的最终父类是Object。 因此函数式接口可以定义Object的public方法。

关于更多的java8学习,《Java8实战》个人感觉这本书不错。也可以看看我的博客,《java8实战》读书笔记,里面有这本书的PDF资源

@FunctionalInterfacepublic interface ObjectMethodFunctionalInterface { void count(int i); String toString(); //same to Object.toString int hashCode(); //same to Object.hashCode boolean equals(Object obj); //same to Object.equals }  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgjyfz.html