物件導向是一種思想,是基於面向過程而言的,就是說物件導向是將功能等通過物件來實現,將功能封裝進物件之中,讓物件去實現具體的細節;這種思想是將資料作為第一位,而方法或者說是演算法作為其次,這是對資料一種優化,操作起來更加的方便,簡化了過程。物件導向有三大特徵:封裝性、繼承性、多型性,其中封裝性指的是隱藏了物件的屬性和實現細節,僅對外提供公共的訪問方式,這樣就隔離了具體的變化,便於使用,提高了復用性和安全性。對於繼承性,就是兩種事物間存在著一定的所屬關係,那麼繼承的類就可以從被繼承的類中獲得一些屬性和方法;這就提高了**的復用性。繼承是作為多型的前提的。多型是說父類或介面的引用指向了子類物件,這就提高了程式的擴充套件性,也就是說只要實現或繼承了同乙個介面或類,那麼就可以使用父類中相應的方法,提高程式擴充套件性,但是多型有一點不好之處在於:父類引用不能訪問子類中的成員。
舉例來說:就是:比如說你要去飯店吃飯,你只需要飯店,找到飯店的服務員,跟她說你要吃什麼,然後就會給你做出來讓你吃,你並不需要知道這個飯是怎麼錯做的,你只需要面向這個服務員,告訴他你要吃什麼,然後他也只需要面向你吃完收到錢就好,不需要知道你怎麼對這個飯進行吃。
1、特點:
1:將複雜的事情簡單化。
2:物件導向將以前的過程中的執行者,變成了指揮者。
3:物件導向這種思想是符合現在人們思考習慣的一種思想。
2、物件導向的三大特徵:封裝,繼承、多型
1.封裝:只隱藏物件的屬性和實現細節,僅對外提供公共訪問方式
好處:將變化隔離、便於使用、提高復用性、提高安全性
原則:將不需要對外提供的內容隱藏起來;把屬性隱藏,提供公共方法對其訪問
2.繼承:提高**復用性;繼承是多型的前提
注:①子類中所有的建構函式都會預設訪問父類中的空引數的建構函式,預設第一行有super();若無空引數建構函式,子類中需指定;另外,子類建構函式中可自己用this指定自身的其他建構函式。
3.多型
是父類或介面定義的引用變數可以指向子類或具體實現類的例項物件
好處:提高了程式的擴充套件性
弊端:當父類引用指向子類物件時,雖提高了擴充套件性,但只能訪問父類中具備的方法,不可訪問子類中的方法;即訪問的侷限性。
前提:實現或繼承關係;覆寫父類方法。
什麼是面向過程?什麼是物件導向?
論語 述而 舉一隅,不以三隅反,則不復也。簡單來說就是舉一反三,我們知道計算機大神會許多種程式語言,對於一門新的語言他們只要乙個月或者幾個星期就可以精通。而對於我們這種程式設計的初學者學會一門語言都感覺好難,更別說精通了。其實主要還是我們的方法不對會接,我們沒有一種程式設計的思維所以我們學起來比較困...
什麼是物件導向
什麼是物件導向 物件導向,就是,思考問題的方法,以物件為主體,眼睛看什麼都是物件 說 物件 其實還是不好懂,因為這個概念是直接從英文翻譯過來的 對中國人也許說,面向東西,面向物體 抽象的物體 面向事物,之類的翻譯或許更好理解 為什麼說是物件導向呢,是為了和 面向過程 相對以前 物件導向 的程式概念等...
什麼是物件導向?
物件導向程式設計 基本定義 物件 object 一切客觀實體的抽象,即將現實世界中的事物抽象成物件 類 class 定義了一件事物的抽象特點。如 狗 是乙個類,它包含狗的一切特徵和行為,是乙個模板 物件 object 是類的例項。如 名叫pyton的臘腸狗 物件導向的起源 1.以c為例他是結構化的語...