第七章 建立並管理類和物件

2022-04-07 09:02:52 字數 1437 閱讀 2196

類容納的資訊儲存在字段中,類提供的功能用方法實現。

封裝是定義類的重要原則。它的中心思想是:使用類的程式不應關心類內部如何工作。程式只需建立類的例項並呼叫類的方法。因此,封裝有時稱為資訊隱藏,它實際有下面兩個目的:

①將方法和資料合併到類中;換言之,為了支援分類。

②控制對方法和資料的訪問;換言之,為了控制類的使用。

類主體包含普通的方法和字段。記住,c#術語將類中的變數稱為字段。

類是建築藍圖,物件是按照藍圖建造的房子。同乙個類可以有多個物件,正如同一張藍圖可以建造多個房子。

控制可訪問性

只允許從類的內部訪問的方法和字段是私有的(private)

方法和字段假如既能從類的內部訪問,也能從外部訪問,就說它是公共的(public)

使用構造器和過載構造器

構造器是在建立類的例項時自動執行的方法。它與類同名,能獲取引數,但不能返回任何值。每個類至少要有乙個構造器。如果不提供構造器,編譯器會自動生成乙個什麼都不做的預設構造器。自己寫預設構造器很容易--新增與類同名的公共方法,不返回任何值就可以。

class circle

private in radius;

public circle()  //預設構造器

radius = 0;

public circle(int initialradius)  //過載構造器

radius = initialradius;

c#的乙個重要特點,一旦為類寫了任何構造器,編譯器就不再自動生成預設構造器。所以,一旦寫了構造器,讓它接收乙個或多個引數,同時還想要預設構造器,就必須親手寫乙個(無參構造器)。

理解靜態方法和資料

在c#中,所有的方法都必須在類的內部宣告。但假如把方法或字段宣告為static,就可以使用類名呼叫方法和訪問字段。

靜態欄位能在類的所有物件之間共享(非靜態欄位則區域性與類的例項)。在下列中,每次新建cricle物件,cricle構造器都使cricle類的靜態欄位numcircle遞增1;

class circle

private in radius;

public static int numcircle;

public circle()  //預設構造器

radius = 0;

numcircle++;

public circle(int initialradius)  //過載構造器

radius = initialradius;

numcircle++;

使用const關鍵字宣告的字段稱為常量欄位字段,是一種特殊的靜態字段,它的值永遠不會改變。

const欄位雖然也是靜態字段,但宣告時不能用static關鍵字。

public const double pi = 3.14159265;

c#允許宣告靜態類,靜態類只能包含靜態成員。為了執行初始化,靜態類允許包含乙個預設構造器,前提是該構造器也被宣告為靜態。

visual C (七) 建立並管理類和物件

7.5 理解靜態方法和資料 設計類的過程就是對資訊進行分類,將相關資訊放到有意義的實體中。封裝時定義類時的重要原則,中心思想是 使用類的程式不應關心類內部如何工作。封裝有時稱為資訊隱藏,實際有兩個目的 如下 class circle 類的主體包含一般的方法和字段 變數 建立circle變數 circ...

第七章檔案管理

為了能對乙個檔案進行正確的訪問,必須為檔案設定用於描述和控制檔案的資料結構,稱之為 檔案控制塊 fcb 檔案與檔案控制塊一一對應。把檔案控制塊的有序集合稱為檔案目錄,即乙個檔案控制塊就是乙個目錄項。通常乙個檔案目錄也被看作是乙個檔案,稱為目錄檔案。檔案管理的操作 基本資訊記錄 fcb,目錄項 方便檢...

第七章 檔案管理

檔案管理 把所管理的程式和資料組織成一系列的檔案,並能進行合理的儲存 使用等操作。1.基本概念 資料項 描述物件某種屬性的字符集 是資料組織中可以命名的最小邏輯資料單位。記錄 一組相關資料項集合,描述物件某方面的屬性 關鍵字 乙個記錄中的乙個或幾個資料項的集合,用於唯一的標識乙個記錄。檔案 由建立者...