溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php和java面向對象的區別有哪些

發布時間:2021-09-17 16:34:47 來源:億速云 閱讀:186 作者:小新 欄目:編程語言

小編給大家分享一下php和java面向對象的區別有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

區別:1、php的class關鍵字不能有除abstract、final之外的修飾符;而Java可以有。2、php的new關鍵字后面的類名可以是字符串類型的變量,java不可以。3、訪問父對象時,php用parent,而java用super。

本教程操作環境:windows7系統、PHP7.1&&java8版,DELL G3電腦

PHP與Java面向對象的不完全比較

PHP是一門弱類型語言,可以用面向過程方式編程,也可以面向對象方式編程。Java則是一門強類型語言,純面向對象。這兩門語言在面向對象方面有些相似之處,有了Java的學習經驗學習PHP很容易上手,光是看這些關鍵字(class、extends、interface、implements、final、public、protected、private、static)就有一種很熟悉的感覺。

初略總結了幾個方面的異同,本人不是學術派,只求實用,如有錯誤之處,歡迎指正。

比較1: 類和接口的聲明、類繼承、接口實現的聲明

比較點相同點不同點
類聲明都是用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關鍵字

比較2:訪問修飾符與訪問方法

比較點相同點不同點
修飾符關鍵字都是public、protected、private
修飾符行為public: 類內部外部都可以訪問,protected: 類內部和子類內部可以訪問,private: 只有類內部才可以訪問php的訪問控制的要松一點
默認修飾符php默認是public,java默認是private
實例成員和實例方法的訪問方法php必須用$this->,java用this.,也可以省略

比較3:類成員與類方法

比較點相同點不同點
關鍵字static
作用域該類的所有實例
訪問方法類名::變量或函數名稱,不需實例化就能訪問

比較4:類常量

比較點相同點不同點
關鍵字constjava通常用final,php不能用final
作用域該類的所有實例
訪問方法類名::變量或函數名稱,不需實例化就能訪問

比較5:抽象方法與抽象類

基本相同,抽象方法和抽象類都是用 abstract 關鍵字修飾,至少有一個抽象方法的類叫做抽象類,抽象類不能實例化,如果子類要能夠實例化,必須實現父類的所有抽象方法。

比較6:重寫/覆蓋/重載

子類方法與父類方法簽名完全一樣,叫做重寫/覆蓋,此時父類方法在子類中是不可見的。Java由于是強類型語言,有重載機制(相同方法名字,不同簽名,調用時根據實際參數類型和個數確定調用的是哪一個方法)。PHP是弱類型,沒有這種重載,而有動態地創建類屬性和方法這種重載,是通過魔術方法(__get, __set, __unset, __isset, __callStatic)來實現的。

以上是“php和java面向對象的區別有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女