溫馨提示×

溫馨提示×

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

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

面向對象語言總結

發布時間:2020-04-08 00:33:55 來源:網絡 閱讀:255 作者:Lee_1985 欄目:編程語言

 C++、java、C#、Python、Php等語言均支持OOP,但是有很多規則,他們卻不盡相同,本文重點總結一下幾種語言在OOP中的共性與特性,只要把這些點區分開,其實幾種語言的代碼你就都可以運用自如。

詳見下表:

C++

Java

C#

Python

PHP

 Lua

強類型(靜態類型)

強類型(靜態類型)

強類型(靜態類型)

弱類型(動態類型)

弱類型(動態類型)

 弱類型(動態類型)

1.支持多繼承
2.
private、protected、public三種繼承方式

1.不支持多繼承
2.
只有一種繼承方式(關鍵字extends

1.不支持多繼承
2.
只有一種繼承方式(無關鍵字,class B : A)

1.支持多繼承

2.只有一種繼承方式(無關鍵字:class C(B,A)

1.支持多繼承

2.只支持一種繼承方式(關鍵字extends

不支持繼承,但可用metatable實現 

1.無接口概念

1.有接口概念

2.支持接口多繼承

1.有接口概念

2.支持接口多繼承

1.無接口概念

1.有接口概念

2.支持接口多繼承

 1.無接口概念

支持函數重載

支持函數重載

支持函數重載

1.不支持函數重載

2.可通過默認參數實現重載

1.不支持函數重載

2.可通過默認參數實現重載

1.不支持函數重載

2.可通過默認參數實現重載

支持子類覆蓋父類方法

支持子類覆蓋父類方法

支持子類覆蓋父類方法

支持子類覆蓋父類方法

支持子類覆蓋父類方法

支持子類覆蓋父類方法 

不可封裝屬性不可封裝屬性可以封裝屬性可以封裝屬性不可封裝屬性

 不可封裝屬性

隱藏成員變量使用:private/protected隱藏成員變量使用:private/protected隱藏成員變量使用:private/protected變量名稱前加雙下劃線隱藏成員變量使用:private/protected

 變量用local修飾

this->訪問成員this.訪問成員this.訪問成員self.訪問成員$this->訪問成員

 self.訪問成員

構造函數為類名構造函數為類名構造函數為類名__init____construct

 無此概念

析構函數為~類名無需自己析構無需自己析構__del____destruct

 無此概念




向AI問一下細節
推薦閱讀:
  1. html總結
  2. rabbitmq總結

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

AI

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