C#干貨 抽象類,類和接口


抽象類是類的基礎形態

比如 人是一個基礎類 也是個抽象類

可以根據人 實現 男人和女人類

 

接口 是一組方法的集合

比如人 實現了一個基本的方法為 玩

男人 玩球 玩電腦    

女人 玩手機 玩游戲。

那么玩就是一個接口 可以獨立抽象出來

只要去 玩 那么不管你玩什么都可以運行。

好了上干貨 ,我們來實現這個

 

 1         //實現玩 接口
 2         interface Iplay
 3         {
 4             void Play();
 5         }
 6         //基類,抽象類
 7        public abstract class Per:Iplay
 8         {
 9             //保護型 只能在繼承類中使用
10             protected string name;
11 
12            //公開性 全部可以訪問
13             public abstract string Name { get; set; }
14 
15            //抽象 玩接口
16             public abstract void Play();
17 
18            //在基類中實現全部繼承類中都可以使用的方法
19             protected string Sex { get { if (Sex == null) { return "男性"; } else { return this.Sex; } } set; }
20         }
21         //男人類
22         class Man : Per
23         {
24              
25 
26             public override void Play()
27             {
28                 Console.WriteLine(Name +Sex+ "玩游戲");
29                 //throw new NotImplementedException();
30             }
31 
32             protected override string Name
33             {
34                 get
35                 {
36                     return this.name;
37                    
38                 }
39                 set
40                 {
41                     this.name = value;
42                     
43                 }
44             }
45         }
46 
47         //女人類
48         class Women : Per
49         {
50 
51             public override string Name
52             {
53                 get
54                 {
55                     return this.name;
56                 }
57                 set
58                 {
59                     this.name = value;
60                 }
61             }
62 
63             public override void Play()
64             {
65                 Console.WriteLine(Name + this.Sex + "玩電腦");
66                 //throw new NotImplementedException();
67             }
68         }

最后是使用方法

 

 1         [STAThread]
 2         static void Main()
 3         {
 4             Application.EnableVisualStyles();
 5             Application.SetCompatibleTextRenderingDefault(false);
 6                  
 7 
 8             Man m = new Man();
 9             m.Name = "男人";            
10             m.Play();
11         }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM