類(lèi)的對象和成員
文章出處:http://www.psychicreadingswithdeb.com 作者:興邦研發(fā)部 人氣: 發(fā)表時(shí)間:2014年11月10日
類(lèi)的對象和成員
1、 類(lèi)成員
一般希望類(lèi)中一些數據不被隨意修改, 只能按指定方法修改, 既隱蔽一些數據。 同樣一些函數也不希望被其它類(lèi)程序調用, 只能在類(lèi)內部使用。 如何解決這個(gè)問(wèn)題呢?可用訪(fǎng)問(wèn)權限控制字,常用的訪(fǎng)問(wèn)權限控制字如下:private ( 私有),public (公有) 。在數據成員或函數成員前增加訪(fǎng)問(wèn)權限控制字,可以指定該數據成員或函數成員的訪(fǎng)問(wèn)權限。
私有數據成員只能被類(lèi)內部的函數使用和修改, 私有函數成員只能被類(lèi)內部的其它函數調用。 類(lèi)的公有函數成員可以被類(lèi)的外部程序調用, 類(lèi)的公有數據成員可以被類(lèi)的外部程序直接使用修改。公有函數實(shí)際是一個(gè)類(lèi)和外部通訊的接口,外部函數通過(guò)調用公有函數, 按照預先設定好的方法修改類(lèi)的私有成員。對于上述例子,name 和 age 是私有數據成員,只能通過(guò)公有函數 SetName()和 SetAge()修改,既它們只能按指定方法修改。
這里再一次解釋一下封裝, 它有兩個(gè)意義, 第一是把數據和處理數據的方法同時(shí)定義在類(lèi)中。第二是用訪(fǎng)問(wèn)權限控制字使數據隱蔽。
2、 類(lèi)的對象
Person 類(lèi)僅是一個(gè)用戶(hù)新定義的數據類(lèi)型,由它可以生成 Person 類(lèi)的實(shí)例,C#語(yǔ)言叫
對象。用如下方法聲明類(lèi)的對象: Person OnePerson=new Person();此語(yǔ)句的意義是建 立
Person 類(lèi)對象,返回對象地址賦值給 Person 類(lèi)變量 OnePerson。也可以分兩步創(chuàng )建 Person
類(lèi)的對象:Person OnePerson;OnePerson=new Person();OnePerson 雖然存儲的是 Person 類(lèi)
對象地址,但不是 C 中的指針,不能象指針那樣可以進(jìn)行加減運算,也不能轉換為其它類(lèi)
型地址, 它是引用型變量, 只能引用( 代表)Person 對象, 具體意義參見(jiàn)以后章節。 和 C、 C++不同,C#只能用此種方法生成類(lèi)對象。
在程序中, 可以用 OnePerson.方法名或 OnePerson.數據成員名訪(fǎng)問(wèn)對象的成員。 例如:
OnePerson.Display(),公用數據成員也可以這樣訪(fǎng)問(wèn)。注意,C# 語(yǔ)言中不包括 C++語(yǔ)言中
的->符號。