
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
函数式编程开发是许多Java程序员都在学习和使用的一种编程开发方式,而本文我们就通过案例分析来简单了解一下,函数式编程需要了解哪些编程概念。
1、高阶函数
高阶函数这里指的可不是数学里的那个,这里主要要从维度这个概念理解,本来函数生成的是值,也就是说,函数比值高维,那么如果我们有一个函数能生成函数或者是以函数为参数,那么显然就比普通的生成值的函数更高维,因为我可以生成你。
定义:高阶函数是一个能接受函数作为参数或能够把函数作为返回值的函数。
2、闭包
什么是闭包?
考虑一个lambda表达式,它使用了其函数作用域之外的变量。当返回该函数时会发生什么呢?也即,当我们通过调用lambda表达式产生的匿名方法引用这些外部变量会发生什么呢?
如果一门语言能够解决这个问题,我们就认为该语言是支持闭包的,或者也可以说它支持词法作用域。
这里还涉及到一个术语:变量捕获
3、函数组合
之前我们有提到andThen()这个方法,这些方法在Java.util.function包中的各个函数式接口中各有提供。
4、柯里化和部分求值
所谓柯里化,就是指将一个接受多个参数的函数转变为一系列,只接受一个参数的函数,在面向函数编程里这么做的目的,就跟我们在面向对象编程里需要抽象出接口和抽象类是一样的,目的就是我们可以通过部分求值来复用这些代码。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。