封裝被定義為"把乙個或多個專案封閉在乙個物理的或者邏輯的包中"。在物件導向程式設計方**中,封裝是為了防止對實現細節的訪問。
c# 封裝根據具體的需要,設定使用者的訪問許可權,並通過訪問修飾符來實現
c#支援的訪問修飾符如下
public
所有物件都可以訪問
private
物件本身在物件內部可以訪問
protected
只有該類物件及子類物件可以訪問
internal
同乙個程式集的物件可以訪問
protected internal
訪問限於當前程式集或派生自包含類的型別
如果沒有指定訪問修飾符,則使用類成員的預設訪問修飾符,即為private。
乙個方法是把一些相關的語句組織在一起,用來執行乙個任務的語句塊。每乙個 c# 程式至少有乙個帶有 main 方法的類。
1. 方法定義
(parameter list)
2.方法呼叫
例項呼叫和類呼叫 (例項類名.方法名/類名.方法名)、遞迴呼叫
當呼叫帶有引數的方法時,您需要向方法傳遞引數。在 c# 中,有三種向方法傳遞引數的方式:
值傳遞預設傳遞方式。這種方式複製引數的實際值給函式的形式引數,實參和形參使用的是兩個不同記憶體中的值。在這種情況下,當形參的值發生改變時,不會影響實參的值,從而保證了實參資料的安全。
引用傳遞
這種方式複製引數的記憶體位置的引用給形式引數。這意味著,當形參的值發生改變時,同時也改變實參的值
輸出傳遞
這種方式可以返回多個值。
在 c# 中,使用ref關鍵字宣告引用引數,使用out關鍵字宣告輸出傳遞
提供給輸出引數的變數不需要賦值。當需要從乙個引數沒有指定初始值的方法中返回值時,輸出引數特別有用
/* 引數傳遞*/
using system;
public class argstest
//引用傳遞
public void swpaq(ref int a, ref int b)
//輸出傳遞
public void getvalue(out int x, out int y)
}class testmain
",a);
console.writeline("b: ",b);
sw.swpaq(ref a,ref b);
console.writeline("a: ",a);
console.writeline("b: ",b);
sw.getvalue(out a, out b);
console.writeline("a: ",a);
console.writeline("b: ",b);
console.readline();
} }}
C 學習筆記(3) 封裝
封裝是c 物件導向三大特性之一 封裝的意義 1 封裝的意義 2 類在設計時,可以把屬性和行為放在不同的許可權下,加以控制。在c 中,共有三種許可權 公共許可權 public 類內可以訪問 類外可以訪問 保護許可權 protected 類內可以訪問 類外不可以訪問 私有許可權 private 類內可以...
C 學習筆記(九) 封裝
c 物件導向的三個特性 封裝 繼承和多型。意義 將屬性和行為作為乙個整體,表現生活中的整體。將屬性和行為加以許可權控制。屬性 用資料描述 行為 用函式描述 許可權 public 公共許可權 類內可以訪問,類外也可以訪問。protected 保護許可權 類內可以訪問,類外不可以訪問。兒子可以訪問父親的...
C 學習(8) 封裝
c 物件導向的三大特性 封裝 繼承 多型 c 認為萬事萬物都可以為物件,物件上有其屬性和行為 具有相同性質的物件,可以抽象為類 封裝是c 物件導向三大特性之一 封裝的意義 封裝意義一 在設計類的時候,屬性和行為寫在一起,表現事物 語法 class 類名 示例1 設計乙個圓類,求圓的周長 includ...