這篇文章主要介紹“php構(gòu)造方法和java構(gòu)造方法有哪些區(qū)別”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“php構(gòu)造方法和java構(gòu)造方法有哪些區(qū)別”文章能幫助大家解決問題。
成都創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)與策劃設(shè)計,椒江網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:椒江等地區(qū)。椒江做網(wǎng)站價格咨詢:028-86922220
區(qū)別:1、重寫子類構(gòu)造函數(shù)時,PHP不調(diào)用父類,而java默認在第一個語句前調(diào)用父類構(gòu)造方法;2、Java允許有多個構(gòu)造方法,而PHP值允許有一個構(gòu)造方法;3、Java中的構(gòu)造方法是必須的,而PHP中的不是。
本文操作環(huán)境:Windows10系統(tǒng)、PHP7.1版、Dell G3電腦。
早期的PHP是沒有面向?qū)ο蠊δ艿?,但是隨著PHP發(fā)展,從PHP4開始,也加入了面向?qū)ο?。PHP的面向?qū)ο笳Z法是從JAVA演化而來,很多地方類似,但是又發(fā)展出自己的特色。以構(gòu)造函數(shù)來說,PHP4中與類同名的函數(shù)就被視為構(gòu)造函數(shù)(與JAVA一樣),但是PHP5中已經(jīng)不推薦這種寫法了,推薦用__construct來作為構(gòu)造函數(shù)的名稱。
1.重寫子類構(gòu)造函數(shù)的時候,PHP會不調(diào)用父類,JAVA默認在第一個語句前調(diào)用父類構(gòu)造函數(shù)
JAVA
class Father{ public Father(){ System.out.println("this is fahter"); } } class Child extends Father{ public Child(){ System.out.println("this is Child"); } } public class Test { public static void main(String[] args){ Child c = new Child(); } }
輸出結(jié)果:
this is fahter
this is Child
輸出結(jié)果:
正在調(diào)用Child
2.重載的實現(xiàn)方式
JAVA允許有多個構(gòu)造函數(shù),參數(shù)的類型和順序各不相同。PHP只允許有一個構(gòu)造函數(shù),但是允許有默認參數(shù),無法實現(xiàn)重載,但是可以模擬重載效果。
JAVA代碼
class Car{ private String _color; //設(shè)置兩個構(gòu)造函數(shù),一個需要參數(shù)一個不需要參數(shù) public Car(String color){ this._color = color; } public Car(){ this._color = "red"; } public String getCarColor(){ return this._color; } } public class TestCar { public static void main(String[] args){ Car c1 = new Car(); System.out.println(c1.getCarColor()); //打印red Car c2 = new Car("black"); System.out.println(c2.getCarColor()); //打印black } }PHP代碼
_color = $color; } public function getCarColor(){ return $this->_color; } } $c1 = new Car(); echo $c1->getCarColor(); //red $c2 = new Car('black'); echo $c2->getCarColor(); //black3.JAVA中構(gòu)造函數(shù)是必須的,如果沒有構(gòu)造函數(shù),編譯器會自動加上,PHP中則不會。
4.JAVA中父類的構(gòu)造函數(shù)必須在第一句被調(diào)用,PHP的話沒有這個限制,甚至可以在構(gòu)造函數(shù)最后一句后再調(diào)用。
5.可以通過this()調(diào)用另一個構(gòu)造函數(shù),PHP沒有類似功能。
class Pen{ private String _color; public Pen(){ this("red");//必須放在第一行 } public Pen(String color){ this._color = color; } }關(guān)于“php構(gòu)造方法和java構(gòu)造方法有哪些區(qū)別”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。
網(wǎng)頁標題:php構(gòu)造方法和java構(gòu)造方法有哪些區(qū)別
網(wǎng)站網(wǎng)址:http://weahome.cn/article/pohhid.html