1. 程式人生 > >7. 封裝、繼承

7. 封裝、繼承

重寫 一個 div ring 單元 類繼承 lin tis 類的繼承

一、類的封裝:

  1、封裝就是將數據或函數等 集合在一個個的單元中(我們稱之為類)。被封裝的對象通常被稱為抽象數據類型。
  2、封裝的意義在於保護或者防止代碼被我們無意中破壞;
  3、能夠修飾類的訪問修飾符只有兩個:public、 internal 。子類的訪問權限不能高於父類的訪問權限。

二、類的繼承:

  1、就是子類包含父類的數據結構和行為方式,包括字段、屬性、方法和事件;
  2、被繼承的類叫基類,繼承的類叫派生類或子類;
  3、當一個類從另一個類派生出來的時候,派生類就具有基類的數據成員、屬性成員和方法成員等;
  4、基類中成員的代碼,在派生類中已不需要重寫,只需要編寫基類定義中所不具有的代碼;
  5

、派生類定義與基類同名的成員,則覆蓋基類成員;
  6、在類的繼承中,基類與派生類的聲明可以有同名的方法,而且同名的方法可以有不同的代碼。也就是說基類與派生類的相同功能中可以有不同的實現方法,從而為解決同一問題提供多種途徑;
  7、派生類自然繼承基類的成員,但不能繼承基類的構造函數成員。

三、例:

 1     //新建第一個類
 2     class Clerk
 3     {
 4         private string _name; //聲明變量
 5         public string Name    //生成屬性
 6         {
 7             get
 8
{ 9 return _name; 10 } 11 12 set 13 { 14 _name = value; 15 } 16 } 17 public string Department 18 { 19 get 20 { 21 return department; 22 }
23 24 set 25 { 26 department = value; 27 } 28 } 29 30 private string department; 31 32 //創建一個方法 33 public void Wrte1() 34 { 35 Console.WriteLine("我叫{0},我是{1}部門的!",this.Name,this.Department ); 36 } 37 } 38 39 //新建一個類繼承Clerk類 40 class Target:Clerk //繼承於Clerk 41 { 42 //聲明變量並添加屬性 43 private int _sellTarget; 44 45 public int SellTarget 46 { 47 get 48 { 49 return _sellTarget; 50 } 51 52 set 53 { 54 _sellTarget = value; 55 } 56 } 57 //定義方法 58 public void Write2() 59 { 60 Console.WriteLine("我叫{0},我是{1}部門的!,我的銷售目標是{2}",this.Name ,this.Department ,this.SellTarget ); 61 } 62 } 63 64 //新建一個類繼承 65 class Satisfaction:Clerk //繼承於Clerk 66 { 67 private double _clientSatisfaction; 68 69 public double ClientSatisfaction 70 { 71 get 72 { 73 return _clientSatisfaction; 74 } 75 76 set 77 { 78 _clientSatisfaction = value; 79 } 80 } 81 public void Write3() 82 { 83 Console.WriteLine("我叫{0},我是{1}部門的!,我的顧客滿意度是{2}",this.Name ,this.Department ,this.ClientSatisfaction ); 84 } 85 }

7. 封裝、繼承