資源描述:
《《面向?qū)ο蟪绦驅(qū)徲嫛稰PT課件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第二章面向?qū)ο蟪绦蛟O(shè)計C#.NET是一種面向?qū)ο蟮某绦蛟O(shè)計語言,它支持面向?qū)ο蟪绦蛟O(shè)計的許多新特性。面向?qū)ο缶幊讨饕枷胧菍?shù)據(jù)以及處理這些數(shù)據(jù)的相應(yīng)方法封裝到類中,使用類創(chuàng)建的實例稱為對象。類類型支持繼承,派生的類可以對基類進(jìn)行擴(kuò)展和特殊化。1版權(quán)所有第二章面向?qū)ο蟪绦蛟O(shè)計C#.NET是一種面向?qū)ο蟮某绦蛟O(shè)計語言,它支持面向?qū)ο蟪绦蛟O(shè)計的許多新特性。面向?qū)ο缶幊讨饕枷胧菍?shù)據(jù)以及處理這些數(shù)據(jù)的相應(yīng)方法封裝到類中,使用類創(chuàng)建的實例稱為對象。類類型支持繼承,派生的類可以對基類進(jìn)行擴(kuò)展和特殊化。2版權(quán)所有第二章面向?qū)ο蟪绦蛟O(shè)計C#.NET是一種面向?qū)ο蟮某?/p>
2、序設(shè)計語言,它支持面向?qū)ο蟪绦蛟O(shè)計的許多新特性。面向?qū)ο缶幊讨饕枷胧菍?shù)據(jù)以及處理這些數(shù)據(jù)的相應(yīng)方法封裝到類中,使用類創(chuàng)建的實例稱為對象。類類型支持繼承,派生的類可以對基類進(jìn)行擴(kuò)展和特殊化。3版權(quán)所有目錄面向?qū)ο蟮幕舅枷腩惻c對象類的方法與重載域、屬性和索引繼承與多態(tài)抽象類與接口委托與事件4版權(quán)所有2.1面向?qū)ο蟮幕舅枷朊嫦驅(qū)ο笫且环N新興的程序設(shè)計方法,或者是一種新的程序設(shè)計規(guī)范,其基本思想是使用對象、類、繼承、封裝、消息等基本概念來進(jìn)行程序設(shè)計;從現(xiàn)實世界中客觀存在的事物(即對象)出發(fā)來構(gòu)造軟件系統(tǒng),并且在系統(tǒng)構(gòu)造中盡可能運用人類的自然思維方式。5
3、版權(quán)所有1.對象的基本概念對象是系統(tǒng)中用來描述客觀事物的一個實體,它是構(gòu)成系統(tǒng)的一個基本單位。2.類把眾多的事物歸納、劃分成一些類是人類在認(rèn)識客觀世界時經(jīng)常采用的思維方法。分類的原則是抽象。類是具有相同屬性和服務(wù)的一組對象的集合,它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和服務(wù)兩個主要部分。6版權(quán)所有3.面向?qū)ο蟮幕咎卣鳎?)封裝性(2)繼承性(3)多態(tài)性7版權(quán)所有2.2類與對象類和對象是面向?qū)ο蟮某绦蛟O(shè)計語言的核心和本質(zhì)。類實際上定義了一種嶄新的數(shù)據(jù)類型。定義了類之后,就可以使用這種新的數(shù)據(jù)類型創(chuàng)建對象。類是對象的模板,對象是類的實例
4、。使用類的好處在于,它有利于程序的模塊化設(shè)計和開發(fā),可以隱藏內(nèi)部的實現(xiàn)細(xì)節(jié),并能增強(qiáng)程序代碼的重用性。8版權(quán)所有2.2.1類的定義類使用class關(guān)鍵字聲明。采用的形式為:[類修飾符]class類名稱[:基類以及實現(xiàn)的接口列表]{類體}[;]9版權(quán)所有publicclassPerson{privatestringname;privatecharsex;privateintage;publicPerson(stringn,chars,inta){name=n;sex=s;age=a;}publicvoidDisplay(){Console.WriteLin
5、e(“name:{0}”,name);Console.WriteLine(“sex:{0}”,sex);Console.WriteLine(“age:{0}”,age);}}10版權(quán)所有2.1.2類的成員1.類的成員分類常量:表示與該類相關(guān)聯(lián)的常量值。字段:即該類的變量。類型:用于表示一些類型,它們是該類的局部類型。方法:用于實現(xiàn)可由該類執(zhí)行的計算和操作。屬性:用于定義一些命名特性,通過它來讀取和寫入相關(guān)的特性。事件:用于定義可由該類生成的通知。索引器:使該類的實例可按與數(shù)組相同的(語法)方式進(jìn)行索引。運算符:用于定義表達(dá)式運算符,通過它對該類的實例進(jìn)行
6、運算。實例構(gòu)造函數(shù):用于規(guī)定在初始化該類的實例時需要做些什么。析構(gòu)函數(shù):用于規(guī)定在永久地放棄該類的一個實例之前需要做些什么。靜態(tài)構(gòu)造函數(shù):用于規(guī)定在初始化該類自身時需要做些什么。11版權(quán)所有2.類成員的可訪問性12版權(quán)所有3.靜態(tài)成員與實例成員C#的類定義中可以包含兩種成員:靜態(tài)成員和非靜態(tài)成員(也即實例成員)。使用了static修飾符的方法為靜態(tài)成員,反之則是實例成員。13版權(quán)所有(1)使用static修飾符聲明屬于類型本身而不是屬于特定對象的靜態(tài)成員。static修飾符可用于字段、方法、屬性、運算符、事件和構(gòu)造函數(shù),但不能用于索引器、析構(gòu)函數(shù)或類型。
7、(2)靜態(tài)成員屬于類,在內(nèi)存中只有一份,不必建立該類的實例,通過類名即可使用;而實例成員屬于用該類創(chuàng)建的實例,要通過對象名使用。(3)非靜態(tài)方法可以訪問類中包括靜態(tài)方法在內(nèi)的所有成員,而靜態(tài)方法只能訪問類中的靜態(tài)成員。14版權(quán)所有【案例2-1】雇員類。該示例讀取新雇員的名稱和ID,逐個增加雇員計數(shù)器并顯示新雇員的有關(guān)信息以及新的雇員數(shù)。為簡單起見,該程序從鍵盤讀取當(dāng)前的雇員數(shù)。15版權(quán)所有2.1.3創(chuàng)建對象與構(gòu)造函數(shù)類聲明后,可以創(chuàng)建類的實例,即對象。創(chuàng)建類的實例需要使用new關(guān)鍵字。類的實例相當(dāng)于一個變量,創(chuàng)建類實例的格式如下:類名對象名=new構(gòu)造函
8、數(shù)(參數(shù)類表);例如:PointmyPoint=newPoint();16版權(quán)所