在我3年的工作生涯中,我一直在使用数据库、数据等,直到去年我才开始使用Python进行一些数据分析。现在我对所有的大数据生态系统都感兴趣了,Python让我走得够远了。
然而,最近我选择将Scala作为我的第二种编程语言。通常情况下,我的程序需要一个类,一个方法,然后需要构建它。诚实是非常令人困惑的:)
因此,我继续阅读,似乎Scala来自JVM环境,我开始阅读Java,结果发现在Java中,您不能只创建一个由单个命令组成的程序。您需要创建一个类、一个方法等等。我知道这可能是因为它遵循OOP的原则之一,但是谁能告诉我源代码,这将解释为什么我们需要在java中创建类和方法-而不是只列出命令?
发布于 2016-02-16 21:11:07
因此,我继续阅读,似乎Scala来自JVM环境,我开始阅读Java,结果发现在Java中,您不能只创建一个由单个命令组成的程序。您需要创建类、方法等。我知道这可能是因为它遵循OOP的原则之一。
首先,让我简要解释一下Python为什么不需要创建类或类似的东西才能运行它。
Python被设计为一种解释语言(或者您可以称它为脚本)。您编写的指令是命令解释器处理的一系列操作系统命令。那么什么是命令解释器呢?
命令解释器是执行您输入的命令的OS的一部分。在某些操作系统中,它被称为shell。
另一方面,Java是一种设计为编译语言的语言,需要语言编译器来编译。语言编译器将源代码转换为机器语言,以便您的处理器可以处理它。
在我看来,这并不是关于Java中的OOP。这是他们是什么,使不同的-被汇编和被解释。
如果您只是想知道为什么Java代码需要一个类,那么以前有人问过:
发布于 2016-02-16 20:53:39
Java是一种面向对象的语言.类是对象,是这种语言的基本构建块之一。在类中,您有方法,其中包含您正在谈论的“命令”。
我建议您参考有关这个主题的文献--有大量的书籍概述了OO原则以及不同语言类型(OO、functional等)之间的差异。
总而言之,维基百科可能是一个很好的起点--参见这里列出的主要范例方法:
P.S.:由于我不确定你的问题到底是关于什么的,我必须补充一下,Python也是一种面向对象语言。您可以在不首先创建类的情况下运行Python代码,这是一种设计选择。
发布于 2016-02-16 20:57:44
Scala就是因为这个而制造的。它混合了函数式和面向对象的语言特性,因此您可以自己创建方法,而无需创建包含它们的类。
Java没有这个特性,方法不能在类之外创建。Java非常面向对象,所有东西(除了原语)都扩展对象。
有些人说,这是这样的,因为java是垃圾收集的。在对象中具有函数可以更容易地释放空间。
这真的取决于你,如果你觉得这是否好。在我看来,最好尽量远离函数式编程。别再回到C时代了。
https://stackoverflow.com/questions/35442576
复制相似问题