它是什么?
Java是一种通用的面向对象的编程语言,主要用于开发从移动应用程序到Web到企业应用程序的各种应用程序。
Python是一种高级的面向对象的编程语言,主要用于Web开发,人工智能,机器学习,自动化和其他数据科学应用程序。
创作者
Java是由Sun Microsystems的James Gosling创建的。
Python由Guido van Rossum创建。
开源状态:
Java是免费的(并且大多数情况下是开放源代码),但公司用途除外。
Python是所有使用案例的免费开放源代码。
平台依赖性
Java的 WORA(“编写一次,随处运行”)哲学是平台无关的(尽管JVM不是)。
Python是平台相关的。
编译或解释
Java是一种编译语言。 Java程序在编译时而不是在运行时转换为字节码。
Python是一种解释型语言。 Python程序在运行时进行翻译。
文件创建
Java :编译后,将生成<filename> .class 。
Python :在运行时,将创建<filename> .pyc 。
错误类型:
Java有 2 种错误类型:编译和运行时错误。
Python有1种错误类型:追溯(或运行时)错误。
静态或动态输入
Java是静态类型的。 在初始化变量时,需要在程序中指定其类型,因为类型检查是在编译时完成的。
Python是动态类型的。 变量在初始化时不需要指定类型,因为类型检查是在运行时完成的。
句法
Java :每个语句都必须以分号( ; )结尾,并且代码块之间用花括号( {} )分隔。
Python :代码块由缩进分隔(用户可以选择使用多少个空格,但在整个块中应保持一致)。
班数
Java : Java中的一个文件中只能存在一个公共*类。
Python : Python中的单个文件中可以存在任何数量的类。
代码量?
与Python相比, Java通常涉及编写更多行代码。
与Java相比, Python需要编写更少的代码行。
多重继承
Java不支持多重继承(从两个或更多基类继承)
Python支持多重继承,尽管由于诸如继承复杂性,层次结构,依赖性问题之类的各种问题而很少实现,但它却很少实现。
多线程
Java多线程可以支持同时运行的两个或多个并发线程。
Python使用全局解释器锁(GIL),一次仅允许一个线程(CPU内核)运行。
执行速度
Java的执行时间通常比Python快。
Python的执行时间通常比Java慢。
Java的Hello World
public class Hello {
public static void main ( String [ ] args )
{
System .out . println ( "Hello Opensource.com from Java!" ) ;
}
}
Python中的Hello World
print ( "Hello Opensource.com from Java!" )
运行程序
要运行Java程序“ Hello.java”,您需要先对其进行编译,这将创建一个“ Hello.class”文件。 要仅运行类名,请使用“ java Hello”。 对于Python,只需运行文件“ python3 helloworld.py”。