物件導向程式設計簡介
一開始當然先跟大家介紹甚麼是物件導向,因為我的工作經驗都是以C#為主,因此在這一系列的文章中都會以C#來介紹物件導向,除了C#以外,JAVA和C++也都是物件導向的語言,在程式語法上和C#會有很多的不同,我在介紹物件導向語法時都會以C#來講解,現在先來跟大家簡單介紹甚麼是C#。
C#他就是一種物件導向的程式語言,適合在Windows平台上執行,以.Net Framework為基礎來運作,C#程式編譯之後,需要有「Common Language Runtime (CLR)」 來作代碼轉換的功能,CLR裡面有很多功能 ,而CLR都已經整合在.Net Framework裡面了,因此在寫C#時是不能沒有.Net Framework的。
而C#這個名稱具有C語言升級的意思,比C和C++更高級。
再來說明甚麼是物件導向,物件導向程式設計(Object oriented programming,OOP) 是使用抽象化概念來實現程式設計模型,以物件為基礎,每個程式之間會互動,好比我開車子踩油門會前進,踩煞車會停止,按喇叭會響等等。在物件導向最基本的概念是類別和物件。
類別(Class):類別是抽象的,看不到摸不著,屬於靜態,不是實體,在類別裡面會定義屬性和方法。
物件(Object):物件是一個可以看得見也摸得到的實體,屬於動態,狀態會變但行為不變。
例如今天我定義一個類別是人,在人這個類別裡面會有身高、體重、年齡,這些有關於人的描述就是人的屬性,每個人都會有這些屬性。人會吃飯和睡覺,這些行為就是方法。
我定義小明是人,小明就是人這個類別中的物件,然後可以描述小明這個人的特性,小明的身高175公分,體重65公斤,年齡20歲。除了小明是人以外,阿勇也是人,然後他的身高體重這些特性又跟小明不一樣了,這就是物件導向的基本概念。
另外,物件導向有三大特性,任何一個會物件導向的程式設計師都必須要知道這三大特性,分別是封裝、繼承和多型,這在後面會再跟大家做介紹。
留言列表