




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第2章章 面向?qū)ο蠹夹g(shù)面向?qū)ο蠹夹g(shù)面向?qū)ο?Object Oriented,OO)2.1 面向?qū)ο蟪绦蛟O(shè)計語言面向?qū)ο蟪绦蛟O(shè)計語言C+JavaC#Delphi(Pascal)VB.NET(VB)Delphi 和和C#之父:之父:Anders Hejlsberg語言大師語言大師:安德爾斯安德爾斯Anders Hejlsberg與與Delphi畢業(yè)于丹麥科技大學(xué),曾是畢業(yè)于丹麥科技大學(xué),曾是Borland公司的創(chuàng)始人之一。公司的創(chuàng)始人之一。在在Borland期間,期間,Anders Hejlsberg開發(fā)了著名的開發(fā)了著名的Turbo Pascal語言,并在其基礎(chǔ)上將語言,并在其基礎(chǔ)上將Turb
2、o Pascal變成一種面變成一種面向?qū)ο蟆⒄嬲龘碛锌梢暬幊汰h(huán)境和卓越的數(shù)據(jù)庫庫訪向?qū)ο蟆⒄嬲龘碛锌梢暬幊汰h(huán)境和卓越的數(shù)據(jù)庫庫訪問特性的應(yīng)用程序開發(fā)語言問特性的應(yīng)用程序開發(fā)語言Delphi。現(xiàn)在。現(xiàn)在Delphi依然是依然是Borland公司的拳頭和旗幟性產(chǎn)品,并成為了廣大開發(fā)人公司的拳頭和旗幟性產(chǎn)品,并成為了廣大開發(fā)人員最喜歡的員最喜歡的RAD(快速編程語言)應(yīng)用開發(fā)工具之一。(快速編程語言)應(yīng)用開發(fā)工具之一。 真正的程序員用真正的程序員用C,聰明的程序員用,聰明的程序員用Delphi。Anders Hejlsberg與與Visual Basic20世紀世紀90年代年代Anders領(lǐng)導(dǎo)開
3、發(fā)的領(lǐng)導(dǎo)開發(fā)的Delphi取得巨大成功,取得巨大成功,這也這也對微軟的對微軟的Visual Basic構(gòu)成了極大的威脅構(gòu)成了極大的威脅,因此比,因此比爾蓋茨再次啟用微軟發(fā)家法寶之一的爾蓋茨再次啟用微軟發(fā)家法寶之一的“挖人挖人”招術(shù):用招術(shù):用豐厚的薪水、股票認購權(quán)和巨額的加盟獎金將豐厚的薪水、股票認購權(quán)和巨額的加盟獎金將Anders挖挖到了微軟。到了微軟。1996年年Anders來到微軟。來到微軟。Delphi號稱號稱Visual Basic 殺手殺手Anders Hejlsberg與與Visual J+(Java)1996年年Anders來到微軟后,直接主抓來到微軟后,直接主抓Visual
4、J+的研發(fā)的研發(fā)工作。后來由于在工作。后來由于在Java開發(fā)工具授權(quán)問題上和開發(fā)工具授權(quán)問題上和Sun公司公司的糾紛,微軟停止了的糾紛,微軟停止了Visual J+的后續(xù)開發(fā)。的后續(xù)開發(fā)。 Java語言的優(yōu)勢是跨平臺性。語言的優(yōu)勢是跨平臺性。Anders Hejlsberg與與C#微軟在微軟在Visual J+項目中處于極為被動的局面,就在人項目中處于極為被動的局面,就在人們認為微軟不可能再有改觀的時候,微軟另辟蹊徑,們認為微軟不可能再有改觀的時候,微軟另辟蹊徑,在在anders的主持下,推出了的主持下,推出了.NET計劃和計劃和C#語言語言。 code once ,run anywhere。
5、2010年3月編程語言排行榜http:/2009年4月20日視頻:甲骨文74億美元收購Sun歐盟無條件批準歐盟無條件批準Oracle公司對公司對Sun收購案的消息,實際上宣告了收購案的消息,實際上宣告了一個偉大公司的離去。一個偉大公司的離去。Java之父James Gosling在自己的博客貼出了一幅畫,應(yīng)該代表了許多技術(shù)人的心情。悼念一個偉大的公司 Java的輝煌還能延續(xù)多久鏈接:Java之父離開OracleGosling博客全文如下:是的,那些傳言都是真的:我已經(jīng)在一周前(4月2日)從Oracle辭職。我要對周三參加圣彼得堡TechDays希望聽我演講的所有人道歉。沒能出席,我感到非常難受
6、。至于離開的原因,我很難回答:能說的任何準確而且真實的話都弊大于利。最困難的地方,是無法再與這些年來我有幸一起工作的所有人共事了。除了在找工作之前休息一段時間之外,我不知道下一步會做些什么。小結(jié):小結(jié):C+是目前功能最為強大的語言。是目前功能最為強大的語言。Visual Basic是最容易使用的語言。是最容易使用的語言。Delphi兼具兼具C+功能強大和功能強大和VB易于使用的特點,最跨平易于使用的特點,最跨平臺性不于臺性不于java,java和和.NET打亂了打亂了Delphi的發(fā)展計劃。的發(fā)展計劃。Java的突出特點是跨平臺性,但功能不如的突出特點是跨平臺性,但功能不如C+。C#是是最年青
7、、面向?qū)ο笞顝氐鬃钅昵唷⒚嫦驅(qū)ο笞顝氐椎恼Z言,結(jié)合了的語言,結(jié)合了C+、java、Delphi等各種語言的優(yōu)點。等各種語言的優(yōu)點。點擊打開全文2.2 面向?qū)ο缶幊堂嫦驅(qū)ο缶幊桃砸訡# 語言為例語言為例注意:注意:UML是獨立于程序語言的。是獨立于程序語言的。“如果你有一只貓,你想把它賣給一個編程者,那么,與其強調(diào)其可愛與溫順,或如何能捉老鼠,不如直接告訴買家,這只貓是面向?qū)ο蟮摹!?關(guān)于貓與面向?qū)ο蟮慕?jīng)典名言非常形象的揭示了面向?qū)ο笤贗T界乃至整個學(xué)術(shù)界的地位。一、一、C#概述概述1、C#的產(chǎn)生的產(chǎn)生2000年年6月,月,Microsoft .NET開發(fā)平臺的發(fā)布,標志著近開發(fā)平臺的發(fā)布,標志
8、著近10年來年來Microsoft公司開發(fā)平臺一個重大的轉(zhuǎn)變。公司開發(fā)平臺一個重大的轉(zhuǎn)變。C#是一種安全的、穩(wěn)定的、簡單的,由C和C+衍生出來的面向?qū)ο蟮木幊陶Z言。它在繼承C和C+強大功能的同時去掉了一些它們的復(fù)雜特性(例如沒有宏和模版,不允許多重繼承)。C#綜合了VB簡單的可視化操作和C+的高運行效率,以其強大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。比爾.蓋茨者,美華盛頓州人也,初,就讀于哈佛大學(xué),茨平素嬉游無度,不務(wù)于正業(yè),每逢試,動輒為C,雖偶有B,未曾見有A者,故老師同學(xué)皆譏之。茨乃心中不憤,遂決心使C乃為名動天下之字母,乃輟學(xué)。
9、后結(jié)識一人,共創(chuàng)今日之C語言,并立公司曰微軟。且出Visual Studio系列,中有VB,VC,然未有VA者,蓋避其學(xué)業(yè)之諱也。世人皆用之,然其內(nèi)幕稀知矣。時易事移,C已顯老邁不可之態(tài),乃創(chuàng)其更新版本,欲名C+。然同創(chuàng)業(yè)者,皆曰C+何若C+也,似應(yīng)名之為此。茨迫于眾意,勉強可之。故今日之C+,本應(yīng)名C+者也,此亦緣何由C徑至C+而逾過C+之因也。C#的故事時至新世紀,茨欲將時至新世紀,茨欲將C+再升一級,將名之曰再升一級,將名之曰C+。時。時有漢人李開復(fù)者,乃獻言。復(fù),漢之臺灣人也,就業(yè)于有漢人李開復(fù)者,乃獻言。復(fù),漢之臺灣人也,就業(yè)于美之名校卡梅大學(xué),時任微軟中國研究院之主任。復(fù)曰:美之名
10、校卡梅大學(xué),時任微軟中國研究院之主任。復(fù)曰:“竊為明公不可也。竊為明公不可也。”茨曰:茨曰:“何哉?何哉?”復(fù)乃答曰:復(fù)乃答曰:“C+太顯累贅,吾有一字,明公鑒之。太顯累贅,吾有一字,明公鑒之。”茨曰:茨曰:“何何字?字?”復(fù)曰:復(fù)曰:“莫若莫若C卅,或卅,或C豐最妙。豐最妙。”茨頗不解:茨頗不解:“卿何意哉?卿何意哉?”復(fù)乃詳言曰:復(fù)乃詳言曰:“夫卅者夫卅者,三三+橫排也;夫橫排也;夫豐者,三豐者,三+豎排也。言簡而意賅,豈不妙哉?豎排也。言簡而意賅,豈不妙哉?”茨大悅,茨大悅,乃于董事會上宣布之。然一派言乃于董事會上宣布之。然一派言C卅優(yōu),蓋卅橫排三卅優(yōu),蓋卅橫排三+,恰恰C+之意也。另一
11、派言之意也。另一派言C豐乃妙,蓋豎排三豐乃妙,蓋豎排三+,乃喻微,乃喻微軟之蒸蒸日上也。軟之蒸蒸日上也。二派糾辨甚兇。茨無奈,復(fù)就詢于開復(fù),乃許之曰:二派糾辨甚兇。茨無奈,復(fù)就詢于開復(fù),乃許之曰:“卿若解此難,吾可以副總裁之位許卿。卿若解此難,吾可以副總裁之位許卿。”復(fù)心狂喜,復(fù)心狂喜,乃表曰:乃表曰:“明公勿急。前有從明公勿急。前有從C徑升徑升C+,今何不從,今何不從C+徑升徑升C+,而逾,而逾C+乎?吾中華上國,有一井字,乃乎?吾中華上國,有一井字,乃四四+所并而成,何不名下一版本為所并而成,何不名下一版本為c#乎?乎?”茨然其言,乃茨然其言,乃如約升之為微軟之副總裁。如約升之為微軟之副總
12、裁。Visual Studio .NET 2002 (7.0)Visual Studio .NET 2003 (7.1)Visual Studio 2005(VS2005) (8.0)Visual Studio 2008(VS2008) (9.0)2、C#編程和編譯環(huán)境編程和編譯環(huán)境windows 應(yīng)用程序應(yīng)用程序網(wǎng)站網(wǎng)站控制臺應(yīng)用程序控制臺應(yīng)用程序VS2005二、二、C#簡明語法簡明語法1、數(shù)據(jù)類型、數(shù)據(jù)類型整型:整型: int浮點型:浮點型:float、double字符型:字符型:char字符串:字符串:string 布爾型:布爾型:boolclass Uninitial public s
13、tatic void Main() int num; num=10; Console.WriteLine(num); 2 2、運算符、運算符算術(shù)算術(shù)+ - * / 邏輯邏輯& | ! 關(guān)系關(guān)系= != =字符串連接字符串連接+3、控制臺程序的輸入與輸出、控制臺程序的輸入與輸出 (1)輸出:)輸出:Console.WriteLine()用于向控制臺輸出一行信息用于向控制臺輸出一行信息(2)輸入:)輸入: Console.ReadLine()用于從控制臺中一次讀取一行字符串,直到遇到用于從控制臺中一次讀取一行字符串,直到遇到Enter鍵鍵才返回讀取的字符串。才返回讀取的字符串。class
14、Programstatic void Main(string args) string x; string y; int z; Console.Write(請輸入第一個數(shù):請輸入第一個數(shù):); x = Console.ReadLine(); Console.Write(請輸入第二個數(shù):請輸入第二個數(shù):); y = Console.ReadLine(); z = int.Parse(x) + int.Parse(y); Console.WriteLine(兩個數(shù)的和為:兩個數(shù)的和為:0, z); 4、程序控制語句、程序控制語句 (1)if語句語句形式形式2:if (表達式表達式) 語句語句1el
15、se 語句語句2形式形式1:If (表達式表達式) 語句語句;class Add public static void Main() int a,b; string c; Console.Write(請輸入一個數(shù)值:請輸入一個數(shù)值:); c= Console.ReadLine(); a=int.Parse(c); b=20; if(a10) Console.WriteLine(“大于大于”); class Compare public static void Main() int a, b, x; Console.Write(請輸入一個數(shù)值:請輸入一個數(shù)值: ); a=int.Parse(Co
16、nsole.ReadLine(); Console.Write(請再輸入一個數(shù)值:請再輸入一個數(shù)值: ); b=int.Parse(Console.ReadLine(); if (ab) x=a; else x=b; Console.WriteLine(the max is: 0 , x); (2)while語句語句 while (條件表達式條件表達式) 語句語句【例例】使用使用while語句,計算語句,計算1+2+3+.+100。class Sum1 public static void Main() int sum=0, i=1; while (i=100) sum=sum+i; i=i+
17、1; Console.WriteLine(sum=0, sum); 三、三、C#面向?qū)ο蟪绦蜓菔久嫦驅(qū)ο蟪绦蜓菔灸繕耍好嫦驅(qū)ο蟪绦虻奶攸c,引出相關(guān)的概念目標:面向?qū)ο蟪绦虻奶攸c,引出相關(guān)的概念面向過程就是分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實現(xiàn),使用的時候一個一個依次調(diào)用就可以了。 面向?qū)ο笫前褬?gòu)成問題事務(wù)分解成各個對象,建立對象的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。來源:互聯(lián)網(wǎng)面向?qū)ο笈c面向過程的區(qū)別面向過程的程序員認為計算機世界是由一系列功能構(gòu)成,功能的核心是算法,圍繞算法有許多數(shù)據(jù),數(shù)據(jù)從簡單到復(fù)雜,統(tǒng)稱為數(shù)據(jù)結(jié)構(gòu),程序就是功能
18、之間通過數(shù)據(jù)銜接。面向?qū)ο蟮某绦騿T認為計算機世界是由許許多多的對象組成,每個對象都有屬于自己的各種動作,程序就是對象之間通過動作進行交互。 簡單地面向?qū)ο蟪绦蜓菔荆╟ode/exame)情景假設(shè):1名學(xué)生的補考:1、老師出卷2、老師安排考試(1)向教務(wù)處向教室和時間(2)要求學(xué)生開始答題3、老師改卷 class teacher public string name; public teacher(string x) name = x; public void ChuJuan() /出卷 Console.WriteLine(name + 老師出卷); public void AnPaiKaoSh
19、i(JiaoWuChu j,student s) j.AnPaiShiJianDiDian(UML); s.DaTi(); public void GaiJuan() /改卷 Console.WriteLine(name + 老師改卷); class student public string name; public student(string x) name = x; public void DaTi() /答題 Console.WriteLine(學(xué)生 + name + 答題); class JiaoWuChu /教務(wù)處s public void AnPaiShiJianDiDian(
20、string s) /安排時間地點 Console.WriteLine(s + “的考試地點:西苑10-806;考試時間: 第10周周五上午10:00-12:00); class Program static void Main(string args) teacher t = new teacher(李維); JiaoWuChu j = new JiaoWuChu(); student s = new student(張三); t.ChuJuan(); /老師出卷 t.AnPaiKaoShi(j,s); /老師安排考試 t.GaiJuan(); /老師改卷 小結(jié):面向?qū)ο缶幊痰年P(guān)鍵步驟小結(jié):
21、面向?qū)ο缶幊痰年P(guān)鍵步驟u定義類定義類u通過類創(chuàng)建對象通過類創(chuàng)建對象u調(diào)用對象的操作,訪問對象的屬性調(diào)用對象的操作,訪問對象的屬性比較:面向過程編程與面向?qū)ο缶幊瘫容^:面向過程編程與面向?qū)ο缶幊淘诿嫦蜻^程編程模式中,在面向過程編程模式中,圍繞功能圍繞功能(步驟步驟)來構(gòu)造系統(tǒng)來構(gòu)造系統(tǒng)。在面向?qū)ο缶幊棠J街校诿嫦驅(qū)ο缶幊棠J街校瑖@對象來構(gòu)造系統(tǒng)圍繞對象來構(gòu)造系統(tǒng)。2.3 面向?qū)ο蟮幕驹砻嫦驅(qū)ο蟮幕驹砻嫦驅(qū)ο蟮乃枷脒@樣認識世界:面向?qū)ο蟮乃枷脒@樣認識世界:u客觀世界由各種各樣的實體組成,這些實體稱為客觀世界由各種各樣的實體組成,這些實體稱為對象對象。u每個對象都有各自的每個對象都有各自
22、的內(nèi)部狀態(tài)和運動規(guī)律內(nèi)部狀態(tài)和運動規(guī)律,在外界其他,在外界其他對象或環(huán)境的影響下,對象會根據(jù)發(fā)生的具體事件作出不對象或環(huán)境的影響下,對象會根據(jù)發(fā)生的具體事件作出不同的反應(yīng),進行對象間的同的反應(yīng),進行對象間的交互交互。u按照對象的屬性和運動規(guī)律的相似性,可以將相近的對按照對象的屬性和運動規(guī)律的相似性,可以將相近的對象劃分為一象劃分為一類類。u復(fù)雜的對象由相對簡單的對象通過一定的方式復(fù)雜的對象由相對簡單的對象通過一定的方式組成組成。u不同對象的組合及對象間的相互作用和聯(lián)系構(gòu)成了各種不同對象的組合及對象間的相互作用和聯(lián)系構(gòu)成了各種不同的系統(tǒng),構(gòu)成了人們所面對的客觀世界。不同的系統(tǒng),構(gòu)成了人們所面對的
23、客觀世界。一、客觀世界由各種各樣的實體組成,這些實體稱為對象一、客觀世界由各種各樣的實體組成,這些實體稱為對象OOP:從問題域中客觀存在的事物出發(fā)來構(gòu)造軟件系統(tǒng),:從問題域中客觀存在的事物出發(fā)來構(gòu)造軟件系統(tǒng),用用對象對象用為對這些事物的抽象表示,并以此作為用為對這些事物的抽象表示,并以此作為系統(tǒng)的基系統(tǒng)的基本構(gòu)成單位本構(gòu)成單位。面向?qū)ο蟮男蜗蠼忉專?)所謂對象,在 Developer 眼里萬物皆為對象。比如,我們從早上起床開始:睜開眼(Object)看見天(Object)亮了,那是因為有光(Object),抬頭(Object)望望窗(Object)外,太陽(Object)出來了.面向?qū)ο蟮男蜗?/p>
24、解釋(2)那么我們是怎么區(qū)分這些對象呢?天上有一個太陽一個月亮,我們從小就知道它們是不同的,甚至不需要理由。為什么?因為它們的外觀形態(tài)、活動規(guī)律都有極大的區(qū)別。比如你看見一個對象,它有5噸重,3米高,四條粗腿,一條長鼻子,兩只大白牙,即使你從沒見過你也應(yīng)該知道它是什么。再比如我現(xiàn)在敲這段文字的時候,腿上一陣奇癢,不用看我就知道屋子里至少有一只蚊子而且還是位蚊子小姐,因為我已經(jīng)知道在這種情況下只有母蚊子才具有“叮”這種行為。二、每個對象都有各自的內(nèi)部狀態(tài)和運動規(guī)律二、每個對象都有各自的內(nèi)部狀態(tài)和運動規(guī)律在外界其他對象或環(huán)境的影響下,對象會根據(jù)發(fā)生的具在外界其他對象或環(huán)境的影響下,對象會根據(jù)發(fā)生的
25、具體事件體事件作出不同的反應(yīng),進行對象間的交互作出不同的反應(yīng),進行對象間的交互。面向?qū)ο蟮男蜗蠼忉專?)新的問題又來了。比如我們這個小區(qū)有不少養(yǎng)寵物的,每天傍晚狗跳貓躥的煞是熱鬧。雖然每只狗都有不同,每只貓也都相異,但看上去狗都是,狗貓都是貓。原因是它們主要的狀態(tài)和行為雖然都完全相同,這就有了類(Class)。類的狀態(tài)稱為屬性(Property),而行為就是方法(Method)了。三、按照對象的屬性和運動規(guī)律的相似性,可以將相近三、按照對象的屬性和運動規(guī)律的相似性,可以將相近的對象劃分為一類的對象劃分為一類MP3計算機計算機類是這些對象的抽象描述,類是這些對象的抽象描述,每個對象是類的一個實例
26、每個對象是類的一個實例。四、復(fù)雜的對象由相對簡單的對象通過一定的方式組成四、復(fù)雜的對象由相對簡單的對象通過一定的方式組成對象具有可分解性和組合性。對象具有可分解性和組合性。面向?qū)ο蠓椒ǖ膭倮濉⒉煌瑢ο蟮奈濉⒉煌瑢ο蟮慕M合組合及對象間的及對象間的相互作用和聯(lián)系相互作用和聯(lián)系構(gòu)成了構(gòu)成了各種不同的系統(tǒng),構(gòu)成了人們所面對的客觀世界。各種不同的系統(tǒng),構(gòu)成了人們所面對的客觀世界。2.4 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕靖拍蠲嫦驅(qū)ο笫且环N運用對象、類、繼承、封裝、多態(tài)、面向?qū)ο笫且环N運用對象、類、繼承、封裝、多態(tài)、消息等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。消息等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。面向?qū)ο竺嫦驅(qū)ο?
27、對象對象+類類+封裝封裝+繼承繼承+多態(tài)多態(tài)一、對象與類一、對象與類對象:客觀世界中的實體,對象由一組對象:客觀世界中的實體,對象由一組屬性和操作組成。屬性和操作組成。類類:具有相同具有相同屬性和行為的對象集合。屬性和行為的對象集合。抽象為抽象為MP3對象:對象: class student public string name; public student(string x) name = x; public void DaTi() /答題答題 Console.WriteLine(學(xué)生學(xué)生 + name + 答題答題); 創(chuàng)建學(xué)生對象創(chuàng)建學(xué)生對象 student s1 = new stud
28、ent(張三張三); student s2 = new student(李四李四);類:類:student對象:對象:s1、s2思考題:思考題:一個類可以創(chuàng)建多個對象,這些對象之間的區(qū)間體現(xiàn)在一個類可以創(chuàng)建多個對象,這些對象之間的區(qū)間體現(xiàn)在(A)屬性的類型不同)屬性的類型不同(B)屬性的個數(shù)不同)屬性的個數(shù)不同(C)操作的個數(shù)不同)操作的個數(shù)不同(D)屬性值不同)屬性值不同二、對象的特性:封裝二、對象的特性:封裝封裝是把對象的屬性和操作結(jié)合成一個獨立的系統(tǒng)單位,封裝是把對象的屬性和操作結(jié)合成一個獨立的系統(tǒng)單位,并盡可能地隱藏對象的內(nèi)部細節(jié)。并盡可能地隱藏對象的內(nèi)部細節(jié)。封裝有兩重含義:封裝有兩
29、重含義:1 1、把相關(guān)的數(shù)據(jù)(屬性)和操作結(jié)合在一起,組成一個、把相關(guān)的數(shù)據(jù)(屬性)和操作結(jié)合在一起,組成一個一個不可再分的獨立單元,即對象。一個不可再分的獨立單元,即對象。2、封裝允許有選擇地隱藏對象中的屬性和操作(通過、封裝允許有選擇地隱藏對象中的屬性和操作(通過可可見性來實現(xiàn)見性來實現(xiàn))。)。 class student public string name; public student(string x) name = x; public void DaTi() /答題答題 Console.WriteLine(學(xué)生學(xué)生 + name + 答題答題); 三、類的特性:繼承(派生、泛化)
30、三、類的特性:繼承(派生、泛化) 子類擁有父類的全部屬性和操作。子類擁有父類的全部屬性和操作。定義子類時不必定義子類時不必重復(fù)定義那些已經(jīng)在父類中定義過的屬性和操作,重復(fù)定義那些已經(jīng)在父類中定義過的屬性和操作,在此基礎(chǔ)上還可以添加自己的屬性和操作。在此基礎(chǔ)上還可以添加自己的屬性和操作。Class1ABCK()W()Class2ABDK()F()Class1CW()Class2DF()class0ABK()Class1ABCK()W()Class2ABDK()F()Class1CW()Class2DF()class0ABK()A B K() C W()ABA父類父類基類基類一般類一般類B子類子類
31、派生類派生類特殊類特殊類如果如果A繼承于繼承于B,則:,則:ABABC單重繼承單重繼承多重繼承多重繼承只有只有C+還支持多重繼承,其他語言(還支持多重繼承,其他語言(C#、java)等都)等都已經(jīng)取消了多重繼承。已經(jīng)取消了多重繼承。程序演示:code/graduate class student public int number; public string name; public string myclass; class graduate:student public string research; public string teacher; class Program stati
32、c void Main(string args) graduate g1 = new graduate(); g1.number = 1000; = 張三; g1.myclass = 管理科學(xué)與工程062; g1.research = 管理系統(tǒng)工程; g1.teacher = 汪應(yīng)洛; Console.WriteLine(姓名:+); Console.WriteLine(導(dǎo)師:+g1.teacher); 程序演示:code/graduate四、對象之間的聯(lián)系紐帶四、對象之間的聯(lián)系紐帶消息消息對象之間通過傳遞消息來相互作用,對象之間通過傳遞消息來相互作用,消息在代碼中體現(xiàn)為消息在代碼中體現(xiàn)為函數(shù)(操作)的調(diào)用。函數(shù)(操作)的調(diào)用。消息包含三個方面的內(nèi)容消息包含三個方面的內(nèi)容: :消息的接收者消息的接收者接收對象應(yīng)采用的方法接收對象應(yīng)采用的方法方法所需要的參數(shù)(可以為空)方法所需要的參數(shù)(可以為空)消息:消息: class teacher public void AnPaiKaoShi() /安排考試安排考試 j.AnPaiShiJianDiDian(UML); s.DaTi(); 五、類的特性:多態(tài)五、類的特性:多態(tài)多態(tài)性:同名的操作被不同的對象接收時,可產(chǎn)生不同的動多態(tài)性:同名的操作被不同的對象接收時,可產(chǎn)生不同的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南高速鐵路職業(yè)技術(shù)學(xué)院《中國古代文學(xué)II》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025屆江蘇省漣水一中高三高考英語試題系列模擬卷(7)含解析
- 快遞運營管理 課件 4.3規(guī)劃路線
- 防盜知識競賽策劃方案
- 非計劃性拔管預(yù)防措施
- 感恩誠信融入安全教育
- 學(xué)校安全教育匯報材料
- 英語-2022年邵陽市小升初英語考試真題模擬卷人教PEP版
- 經(jīng)濟學(xué)-上海財經(jīng)大學(xué)經(jīng)濟學(xué)真題
- 法碩法學(xué)-《全國法律碩士聯(lián)考》預(yù)測試卷2
- 支氣管炎:與慢性支氣管炎的區(qū)別
- 可燃氣體檢測報警器型式評價大綱
- 中國地圖世界地圖全套可編輯地圖課件
- 《杰瑞的冷靜太空》新版
- 大排檔夜市管理制度
- 《英語修辭手法》
- 分子診斷技術(shù)在感染性疾病中的應(yīng)用
- 各國安規(guī)認證大全帶圖標講解
- 飛機科普知識公開課一等獎市賽課獲獎?wù)n件
- 施工現(xiàn)場重大危險源辨識及監(jiān)控措施
- 礦大畢業(yè)設(shè)計-固定式帶式輸送機設(shè)計
評論
0/150
提交評論