java1.7中的函数式编程方法

java1.7中的函数式编程方法,java,functional-programming,Java,Functional Programming,在不使用Java8和其他第三方库的情况下,是否可以用函数式编程的方式编写应用程序? 我的意思是,如果我们遵循一些设计模式,可以帮助我们在Java1.7中实现函数式编程范式吗 我对设计模式没有太多经验,我读过关于它们的书,但不知道在哪里应用哪种模式 简单回答:否。 Java是一种面向对象的编程语言,虽然Java8和第三方库打破了一些仪式,但在其核心,您仍然在处理类 您尝试应用的功能性设计模式在这种语言中不起作用(或者如果它们起作用,则很难维护和阅读)。你应该考虑使用面向对象的设计模式来代替“/P>

在不使用Java8和其他第三方库的情况下,是否可以用函数式编程的方式编写应用程序? 我的意思是,如果我们遵循一些设计模式,可以帮助我们在Java1.7中实现函数式编程范式吗


我对设计模式没有太多经验,我读过关于它们的书,但不知道在哪里应用哪种模式

简单回答:否。

Java是一种面向对象的编程语言,虽然Java8和第三方库打破了一些仪式,但在其核心,您仍然在处理类


您尝试应用的功能性设计模式在这种语言中不起作用(或者如果它们起作用,则很难维护和阅读)。你应该考虑使用面向对象的设计模式来代替“/P>”,以将这些内容关闭为“不清楚”:这里所要问的是非常清楚的。java的设计模式与功能编程无关。老实说,Java不是函数式编程语言,即使在Java8中也是如此。如果你想使用“功能范式”,最好改用真正的FP语言。当然,需要维护“Java 7中的functional”代码的人也会这样投票。如果我们创建一个名为Callback的接口,该接口有一个方法func,我们将传递实现该接口的类的对象,而不是传递方法,类似地,我们可以返回实现该接口的类的对象。在执行回调时,我们可以调用object.func()。您仍然在传递对象,并且仍然需要一个对象来实现接口。这不是函数式编程。这就是(简单地)模拟“函数作为对象”或C/C++“函数指针”。