1. 程式人生 > >深入類的方法

深入類的方法

control 方法重載 size 個數 pre height 交互圖 lose images

構造函數

無參構造函數

帶參構造函數

在C#中,當我們定義了一個類後,默認會生成一個與類名同名的無參構造,但是我們如果定義了

任何一個帶參構造,那麽系統不再幫助我們生成無參構造.

構造函數的特點:

1.方法名與類名相同

2.沒有返回值

3.主要完成對象的初始化工作

方法的重載

方法重載的特點:

1.方法名相同

2.方法參數類型不同或者參數個數不同

3.在同一個類中

對象交互

實例:

Control類:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace day04_0200對象間交互 8 { 9 /// <summary> 10 /// 遙控器類 11 /// </summary> 12 class Control 13 { 14 //開機 15 public void Opens(TV tv) 16 { 17 tv.Open(); 18 } 19 //
關機 20 public void Closes(TV tv) 21 { 22 tv.Close(); 23 } 24 //換臺 25 public void Changes(TV tv,string changeNo) 26 { 27 tv.Change(changeNo); 28 } 29 30 31 } 32 }

TV類:

 1 using System;
 2 using
System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace day04_0200對象間交互 8 { 9 /// <summary> 10 /// 電視機類 11 /// </summary> 12 class TV 13 { 14 bool isOn = false; //是否開機 15 //打開電視機 16 public void Open() 17 { 18 if (isOn==false) 19 { 20 isOn = true; 21 } 22 Console.WriteLine("電視機打開"); 23 } 24 //關閉電視機 25 public void Close() 26 { 27 if (isOn==true) 28 { 29 isOn = false; 30 } 31 Console.WriteLine("電視機關閉"); 32 } 33 //換臺 34 public void Change(string changeNo) 35 { 36 if (isOn) 37 { 38 Console.WriteLine("正在切換到{0}臺",changeNo); 39 } 40 } 41 } 42 }
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace day04_0200對象間交互
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             Control con = new Control();
14             TV tv = new TV();
15             con.Opens(tv);
16             con.Changes(tv,"123");
17             con.Closes(tv);
18             Console.ReadKey();
19         }
20     }
21 }

執行結果:

技術分享

如下圖所示為統計建模語言(UML)中的時序圖:

這是一種強調時間順序的交互圖.

技術分享

深入類的方法