區別:1、php的class關鍵字不能有除abstract、final之外的修飾符;而Java可以有。 2.php的new關鍵字後面的類別名稱可以是字串類型的變量,java不可以。 3.訪問父物件時,php用parent,而java用super。
本教學操作環境:windows7系統、PHP7.1&&java8版,DELL G3電腦
PHP是一門弱型別語言,可以用以過程方式編程,也可以以物件導向方式編程。 Java則是強型別語言,純粹物件導向。這兩門語言在物件導向方面有些相似之處,有了Java的學習經驗學習PHP很容易上手,光是看這些關鍵字(class、extends、interface、implements、final、public、protected、private、static)就有一種很熟悉的感覺。
初略總結了幾個面向的異同,本人不是學術派,只求實用,如有錯誤之處,歡迎指正。
相同點 | 不同點 | |
---|---|---|
都是用class關鍵字,可用abstract、final修飾,這兩個修飾符的意思都是一樣 | php的class關鍵字不能有除abstract、final之外的修飾符,Java的class關鍵字可以有public、proctected、 private修飾符,Java的一個檔案只能有一個public類別 | |
用interface關鍵字 | ##同上 | |
用extends關鍵字,單一繼承 | 無 | |
#用extends關鍵字 | 無 | |
#用implements關鍵字,可以實作多個介面 | 無 | |
用new關鍵字,都是回傳物件的引用,物件賦值也是引用賦值 | php的new 關鍵字後面的類別名可以是字串類型的變量,java不可以 | |
#php用parent關鍵字,java用super關鍵字 |
不同點 | ||
---|---|---|
無 | 修飾詞行為 | |
php的存取控制的要鬆一點 | #預設修飾符 | |
php默認是public,java預設是private | 實例成員和實例方法的存取方法 | |
php必須用$this->,java用this.,也可以省略 |
不同點 | ||
---|---|---|
#無 | 作用域 | |
#無 | ##訪問方法 | 類別名稱::變數或函數名稱,不需要實例化就能存取 |
#比較4:類常數 |
##關鍵字 | ||
---|---|---|
作用域 | 該類別的所有實例 | 無 |
#存取方法 | #類別名稱::變數或函式名稱,不需要實例化就能存取 | 無 |
# |
以上是php和java物件導向的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!