1. 程式人生 > >【概念】面向物件OOP

【概念】面向物件OOP

之前一直在說面向物件面向物件其實自己也沒有搞得很清楚。

剛剛翻開了java7(圖書館沒有jva8,然後估計明年就會出java9了,厲害了我的java)看到緒論部分講面向物件的程式設計,故而來稍微整理下,加深下記憶。

首先在整理OOP的時候先提及一下C和Pascal用到的方法:

結構化程式設計方法:相對於機器指令和組合語言有了長足的進步,結構化的語言使得複雜程式變得簡單了很多,特點是支援鼓勵的子例程,區域性變數,豐富的控制機構和不試用Goto(然而我並沒有用過goto...),但在處理非常大的專案時就有點捉襟見肘了,很多專案甚至已經達到了結構化程式設計方法工作的極限。

程式可以用兩種方法組織:

1.圍繞程式碼(發生了什麼)2.圍繞資料(誰受了影響)

結構化程式是第一種圍繞程式碼的的方法。

面向物件的方法(OOP)是後一種圍繞資料的方法,以“資料控制訪問程式碼”為主要原則,圍繞資料來組織程式,在面向物件的語言之中需要定義資料和作用於資料的例程。

OOP有三個特性:封裝,多型性和繼承

封裝:自包含的黑盒子,有私有和公有的部分,公有可以被訪問,私有的外部不能訪問。Java中基本封裝單元是類(Class)。

多型性:允許用一個介面在訪問同一類動作的特性。(“單介面,多方法”)例如一個堆疊,可以處理int,float,double各種,只要知道如何使用int,那麼floatdouble

肯定沒什麼問題。換而言之,只要會用轎車的方向盤,那麼卡車,卡丁車的方向盤肯定也會用。

繼承:一個物件獲得另一個物件的屬性的過程。(重要的原因是支援層次結構類的概念)例如定一個類用來表示食物,那麼定義一個類表示水果的時候自然是可以繼承食物裡的屬性,而且可以增加很多自己的特有屬性,再往下可能就是表示蘋果的類,再往下表示鮮紅多汁的蘋果等等。

 總結一下,面向物件的方法,以“資料控制訪問程式碼”為主要原則,圍繞資料來組織程式。


祝面向物件愉快~XD

相關推薦

概念面向物件OOP

之前一直在說面向物件面向物件其實自己也沒有搞得很清楚。 剛剛翻開了java7(圖書館沒有jva8,然後估計明年就會出java9了,厲害了我的java)看到緒論部分講面向物件的程式設計,故而來稍微整理下,加深下記憶。 首先在整理OOP的時候先提及一下C和Pascal用到的

面向物件 -多執行緒 理論知識

1. 基本概念 程序: 系統中正在執行的程式。 一條程序就代表當前系統中正在執行的一個程式。 每個程序都是相互獨立的,每個程序中都有屬於自己的記憶體空間。 執行緒:一個程序想要執行任務,必須通過執行緒來排程(執行),每個程序至少要有一個執行緒,如果沒有執行緒,那麼該程序(程式)就會退出執行。 執

PHP面向物件---物件和類的關係

author:咔咔 WeChat:fangkangfk   面向物件: 面向物件簡稱OOP,是一種計算機程式設計架構,使用面向物件程式設計可以實現程式碼的重用性,靈活性,擴充套件性。面向物件符合人類看待事物的一般規律。使其程式碼更簡潔,更容易維護,並且具有更強的重用性

面試面向物件相關-這一篇全瞭解

1、什麼是面向物件,什麼是面向過程。面向物件的三大基本特徵和五大基本原則是什麼? 解: 什麼是面向過程? 把問題分解成一個一個步驟,每個步驟用函式實現,依次呼叫即可。就是說,在進行面向過程程式設計的時候,不需要考慮那麼多,上來先定義一個函式,然後使用各種諸如if-els

JAVA面向物件程式—描述物件(修改補充)

前言 上一篇文章主要介紹了有關面向物件的知識與程式設計,這篇短小的文章主要是針對面向物件的一個補充。 知識點: 類的主方法 主方法是類的入口點,它定義了程式從何處開始以及提供對程式流向的控制,在java中,程式設計都是通過主方法來執行程式。 public st

java面向物件程式設計——類與物件的繼承和多型

一、程式碼塊 程式碼塊定義:使用 {} 定義的一段程式碼。 根據程式碼塊定義的位置以及關鍵字,又可分為以下四種: 普通程式碼塊(定義在方法中,除錯) 構造塊(定義在類中的(不加修飾符)) 靜態塊 同步程式碼塊 構造塊 構造塊在每次產生一個新的物件就呼叫一次構

java面向物件程式設計——類與物件的封裝

Java比C更方便的地方在於Java是面向物件的。面向物件的特徵: 1、封裝 ; 2、繼承 ; 3、多型; 以下對面向物件的封裝特徵進行簡述: 一、類與物件的定義與使用 類是指共性的概念,物件是一個具體的、可以使用的事物。 首先產生類,而後才可以產生物件。 類的組成: 1.

JAVA面向物件設計七個原則

    程式設計編碼理論上只要跑得起來就沒有問題了,但實際上程式是為需求服務的,需求無時無刻都有可能變更,程式也需要做出相應改變,這時如果程式設計混亂,那麼大多數時候都是沒有辦法輕微改動程式就達到需求目標的,而此時給程式大開刀也不允許,最後進入了兩難境地。所以最好一開始就

JavaScript面向物件與原型

ECMAScript有兩種開發模式:     1、函式式(過程化)     2、面向物件(OOP) 但是ECMAScript沒有類的概念,因此與基於類的語言的物件也有所不同。 一、建立物件          var box=new Object();         

Java基礎筆記整理---07面向物件程式設計-類和物件

int 型別預設值為 0 String型別預設值為null 方法(函式):返回值 方法名(引數型別 引數名稱, ...){方法體(程式碼塊)}this指呼叫的方法中(當前)的變數類與物件1.構造方法:1> 構造物件 構造例項的方法,一個特殊方法,方法名需要與類名相同,

軟工視訊——面向物件技術

面向物件的概念 什麼時面向物件 Coad和Yourdon給出了一個定義: 面向物件=物件+類+繼承+通訊 如果一個軟體系統時使用這樣四個概念設計和實現的,則我們認為這個軟體系統是面向物件的。 物件 物件是面向物件開發的模式的基本成分 每個物件可用它本身的一組屬性和它可以執行的一組

PHP篇面向物件基礎

1、宣告:class 類名{                          //成員屬性(變數) 修飾符 $變數名=初值;       &nb

軟考——面向物件技術(1)

面向物件???——》一種具有構造繼承性、 封裝性和多型的程式設計語言族的命名;               ???——》一種程式設計風格; 面向物件???——》物件 + 分類 + 繼承 + 

軟考——面向物件技術(3)

物件圖???——》展現了某一時刻一組物件以及它們之間的關係;描述了在類圖中所建立的事物的例項的靜態快照; 建立系統的靜態設計檢視或靜態程序檢視???——》使用物件圖對物件結構進行建模;???——》從

軟考——面向物件(4)

Diagram  VS  Diagram Sequence Diagram  VS  Collaboration diagram???——》 同點:在語義上等價,可以相互轉化;???——》都是互動

軟考——面向物件技術(互動圖、構件圖、組合結構圖、協作圖、部署圖、包圖)

互動圖???——》對系統的動態方面進行建模; 互動圖組成???——》物件、訊息、生命線等; 互動圖表現???——》序列圖、通訊圖、互動概覽圖、計時圖、狀態圖; 順序圖主要元素

軟體工程面向物件技術

前言 面向物件技術強調在軟體開發過程中面向客觀世界或問題域中的事物,採用人類在認識客觀世界的過程中普遍運用的思維方法,直觀、自然地描述客觀世界中的有關事物。面向物件技術的基本特徵主要有抽象性、封裝性、繼

japson的專欄面向物件_手擼原始碼 Java集合_Java基礎:IO流

專欄達人 授予成功建立個人部落格專欄

面向物件OOP概念描述

面向物件三大特徵:封裝,繼承,多型 封裝就是把一個物件的屬性私有化,同時提供一些可以被外界訪問的屬性的方法 繼承就是在已經存在的類的定義作為基礎,建立新的技術.新定義的類可以新增新的資料或功能,也可以使用父類的功能 多型分為編譯時多型和執行時多型。其中編輯時多型是靜態的,主要是指方

Java-3面向物件程式設計理解

面向物件程式設計核心在於“封裝”,即將同一類事物抽象為類class,類似於關係資料庫中實體型,這個類中元素就如屬性一般去描述這個類,“屬性”不僅包括變數,還包括這個類可能使用的函式,也叫方法,由變數和函式即可構成一個類。同時這個“類”的概念也可以類比於C語言中結構體型別,只不過相比於結構體,“類”中