zoukankan      html  css  js  c++  java
  • Python和java的选择

    它是什么?

    Java是一种通用的面向对象的编程语言,主要用于开发从移动应用程序到Web到企业应用程序的各种应用程序。

    Python是一种高级的面向对象的编程语言,主要用于Web开发,人工智能,机器学习,自动化和其他数据科学应用程序。

    创作者

    Java是由Sun MicrosystemsJames Gosling创建的。

    PythonGuido van Rossum创建。

    开源状态:

    Java是免费的(并且大多数情况下是开放源代码),但公司用途除外。

    Python是所有使用案例的免费开放源代码。

    平台依赖性

    Java WORA编写一次,随处运行)哲学是平台无关的(尽管JVM不是)。

    Python是平台相关的。

    编译或解释

    Java是一种编译语言。 Java程序在编译时而不是在运行时转换为字节码。

    Python是一种解释型语言。 Python程序在运行时进行翻译。

    文件创建

    Java :编译后,将生成<filename> .class 

    Python :在运行时,将创建<filename> .pyc 

    错误类型:

    Java 2 错误类型:编译和运行时错误。

    Python1种错误类型:追溯(或运行时)错误。

    静态或动态输入

    Java是静态类型的。 在初始化变量时,需要在程序中指定其类型,因为类型检查是在编译时完成的。

    Python是动态类型的。 变量在初始化时不需要指定类型,因为类型检查是在运行时完成的。

    句法

    Java :每个语句都必须以分号( ; )结尾,并且代码块之间用花括号( {} )分隔。

    Python :代码块由缩进分隔(用户可以选择使用多少个空格,但在整个块中应保持一致)。

    班数

    Java  Java中的一个文件中只能存在一个公共顶级类。

    Python  Python中的单个文件中可以存在任何数量的类。

    代码量?

    Python相比, Java通常涉及编写更多行代码。

    Java相比, Python需要编写更少的代码行。

    多重继承

    Java不支持多重继承(从两个或更多基类继承)

    Python支持多重继承,尽管由于诸如继承复杂性,层次结构,依赖性问题之类的各种问题而很少实现,但它却很少实现。

    多线程

    Java多线程可以支持同时运行的两个或多个并发线程。

    Python使用全局解释器锁(GIL),一次仅允许一个线程(CPU内核)运行。

    执行速度

    Java的执行时间通常比Python快。

    Python的执行时间通常比Java慢。

    JavaHello 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”

  • 相关阅读:
    hive on tez 异常
    mysql 集群异常
    Linux abrt-hook-ccpp使用CPU和内存太多,导致其他ambari server 服务启动时报内存溢出
    Ambari 配置kerberos以后,,启动hiveserver2异常
    spring-data-jpa更新数据InvalidDataAccessApiUsageException:Executing an update/delete query
    mac软件思维导图(2020-10-11)
    Error: Invalid or corrupt jarfile
    springboot使用xml配置dubbo读取yml占位符
    ElasticSearch批量写入时遇到EsRejectedExecutionException
    ZYNQ Linux 移植:包含petalinux移植和手动移植debian9
  • 原文地址:https://www.cnblogs.com/yhcTACK/p/15208117.html
Copyright © 2011-2022 走看看