它是什麼?

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