php繼承與實現的比較(php與其他語言的比較)

  • 1、關於PHP繼承抽象類 和 繼承普通類 有什麼區別
  • 2、thinkphp5 implements和extends的區別
  • 3、PHP繼承機制和JS的繼承機制有什麼不同?
  • 4、JAVA和PHP的區別
  • 5、PHP主要是用來做什麼呢,和JAVA有什麼區別是?

抽象類中必須包含一個抽象方法,只能交給他的繼承類重寫實現,比如你上面那個抽象類,繼承他的類必須要有一個kx方法。而下面那個普通類的繼承類可以沒有kx方法。這樣的好處就是統一性,比如我們要有一個數據庫操作類,我們可能用來操作mysql,也可能操作oracle,但是他們都會有一些共同的方法,這樣我們通過一個抽象類來統一方法、參數,mysql類和oracle類都來繼承這個抽象類,這樣,以後我們,操作mysql就實例mysql類,操作oracle就實例oracle類,但是不管是操作mysql和oracle都可以使用同樣的方法和參數(這只是一個比方,系統有提供數據庫抽象層如PDO供我們使用)。當然你也可以說繼承普通類也可以統一方法參數,確實是可以,但是如果繼承者沒有統一方法也不會報錯。而使用抽象類就硬性規定了必須要重寫方法否則出錯。

extends 是繼承某個類

繼承之後可以使用父類的方法

也可以重寫父類的方法

implements 是實現多個接口

接口的方法一般為空的

必須重寫才能使用

extends是繼承父類,只要那個類不是聲明為final或者那個類定義為abstract的就能繼承,JAVA中不支持多重繼承,但是可以用接口來實

現,這樣就要用到implements,繼承只能繼承一個類,但implements可以實現多個接口,用逗號分開就行了

比如

class A extends B implements C,D,E

extends 繼承類implements 實現接口

類和接口是不同的。類里是有程序實現的;而接口無程序實現,只可以預定義方法 extends 繼承類

implements 實現接口

Java也提供繼承機制﹐但還另外提供一個叫interface的概念。由於Java的繼承機制只能提供單一繼承(就是只能繼承一種父類別)﹐所以就以

Java的interface來代替C++的多重繼承。interface就是一種介面﹐規定欲溝通的兩物件﹐其通訊該有的規範有哪些。如以Java程式

語言的角度來看﹐Java的interface則表示:一些函數或資料成員﹐為另一些屬於不同類別的物件所需共同擁有﹐則將這些函數與資料成員﹐定義在一

個interface中﹐然後讓所有不同類別的Java物件可以共同操作使用之。

類式繼承就像java的繼承一樣,思想也比較簡單:在子類型構造函數的內部調用超類型構造函數。

原型式繼承是藉助已有的對象創建新的對象,將子類的原型指向父類,就相當於加入了父類這條原型鏈

而你的 下面這段代碼不是嚴格意義上的類式繼承,按照Nicholas C.Zakas的說法,這個應該叫做組合式繼承。它調用了兩次parent2()。第一次是 child2.prototype=new parent2(‘param’); child2就會得到兩個屬性param,getParam(),他們都是parent2的屬性,但是他們在child2的原型中。第二次是parent2.call(this,cparam); 這次又在新對象上創建了實例屬性param,getParam()。於是,這兩個屬性就屏蔽了原型中的兩個同名屬性。這有什麼好處呢,就是你在構建一個child3時也繼承parent2()的屬性,還可以定義自己的屬性。與此同時他長的就和他兄弟不同了,但又有一樣的“血統(使用父類的方法)”。

java應用的場景比較廣泛,人相對來講也比較多,php主要是用於網站方面,如果是用於建網站的話,php開發比較快速。

1,PHP適合於快速開發,中小型應用系統,開發成本低,能夠對變動的需求作出快速的反應。而Java適合於開發大型的應用系統,應用的前景比較廣闊,系統易維護、可復用性較好。

2,系統的技術架構比較,PHP只能實現簡單的分布式兩層或三層的架構,而JAVA在這方面就十分強大,可以實現多層的網絡架構。

3,數據庫訪問比較,PHP對於不同的數據庫採用不同的數據庫訪問接口,所以數據庫訪問代碼的通用性不強,而Java通過JDBC來訪問數據庫,通過不同的數據庫廠商提供的數據庫驅動方便地訪問數據庫,訪問數據庫的接口比較統一。

4,開發成本比較,既然php在諸多方面都不如java優異,那麼php開發出的oa產品何以與java產品競爭呢?在於Php陣營普遍走的是低端路線,而java陣營走的是中高端路線。兩者之間的區域較小。

拓展資料:

Java(計算機編程語言)

Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。

Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行複雜的編程 。

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。

它可以比CGI或者Perl更快速地執行動態網頁。

用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

參考資料:百度百科,JAVA

百度百科,PHP

PHP主要使用來做網站以及Web應用開發的。跟JAVA區別如下:

一、語言優勢不同

1、PHP:即“超文本預處理器”,是一種通用開源腳本語言。在服務器端執行的腳本語言。

2、JAVA:是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念。

二、語法不同

1、PHP:語法混合了C、Java、Perl以及 PHP 自創的語法。

2、JAVA:作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行複雜的編程。

三、特點不同

1、PHP:利於學習,使用廣泛,主要適用於Web開發領域。

2、JAVA:具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點。

參考資料來源:百度百科-Java

參考資料來源:百度百科-PHP

原創文章,作者:VIOQQ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/126430.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
VIOQQ的頭像VIOQQ
上一篇 2024-10-03 23:08
下一篇 2024-10-03 23:08

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28

發表回復

登錄後才能評論