3. 接口、多重接口
阿新 • • 發佈:2017-10-09
linq cti area circular 輸出 span parse main adl
接口、多重接口:
定義:接口是指定一組函數成員而不實現成員的引用類型,其他類型 —— 類和結構可以實現接口。
1 /**
2 * 一: 1)定義 ICalculate 接口,接口文件如下:
3 * interface ICalculate
4 * {
5 * void getArea(); //計算圓面積。
6 * void getZC(); //計算圓周長
7 * }
8 * 2) 定義 Circularity 類,實現接口Calculate. 且調試後輸出結果。
9 */
10 using System;
11 using System.Collections.Generic;
12 using System.Linq;
13 using System.Text;
14 using System.Threading.Tasks;
15
16 namespace SecondAssignment
17 {
18 //定義 ICalculate 接口
19 interface ICalculate
20 {
21 void getArea(); //計算圓面積
22 void getZC(); //計算圓周長
23 }
24 class Circularity:ICalculate
25 {
26 //顯示實現計算圓的面積
27 void ICalculate.getArea()
28 {
29 Console.WriteLine("請輸入圓的半徑(int)求面積:");
30 int r = int.Parse(Console.ReadLine());
31 double _Area = 0;
32 _Area = Math.PI * r * r ;
33 Console.WriteLine("圓的面積為:"+_Area);
34 }
35 //先生實現計算圓的周長
36 void ICalculate.getZC()
37 {
38 Console.WriteLine("請輸入圓的半徑(int)求周長:");
39 int r = int.Parse(Console.ReadLine());
40 double d = 0;
41 d = Math.PI * r * 2;
42 Console.WriteLine("圓的周長為:"+d);
43 }
44 }
45 class Test
46 {
47 static void Main(string[] args)
48 {
49 //通過接口調用輸出
50 ICalculate calculate = new Circularity();
51 calculate.getArea();
52 Console.WriteLine();
53 calculate.getZC();
54 Console.ReadKey();
55 }
56 }
57 }
1 /**
2 * 二: 設計一個類 TClass , 繼承下面的接口 IMeasure,
3 * 實現其中的 Length() 與 Area()方法,來計算特定長度等邊三角形的周長和面積。
4 * interface IMeasure
5 * {
6 * int Length(int s);
7 * int Area(int s);
8 * }
9 */
10 using System;
11 using System.Collections.Generic;
12 using System.Linq;
13 using System.Text;
14 using System.Threading.Tasks;
15
16 namespace SecondAssignment
17 {
18 //計算特定長度等邊三角形的周長和面積。
19 interface IMeasure
20 {
21 int Length(int s); //計算周長
22 int Area(int s); //計算面積
23 }
24 class TClass : IMeasure
25 {
26 //求周長
27 int IMeasure.Length(int s)
28 {
29 int _length = s * 3;
30 return _length;
31 }
32 //求面積
33 int IMeasure.Area(int s)
34 {
35 double h = Math.Sin(Math.PI/3) * s; //角度不能直接輸入數值,需要 Math.PI 進行轉換
36 double _Area = (s * h) / 2;
37 return Convert.ToInt32(_Area);
38 }
39 }
40 }
1 /**
2 * 三:設計一個類 TClass, 繼承下面的接口 IMeasure,
3 * 實現其中的 Length() 與 Area()方法,來計算特定長度等邊三角形的周長和面積。
4 interface IMeasure
5 {
6 int Length(int s);
7 int Area(int s);
8 }
9 * 設計一個測試程序,創建 TClass 的實例對象,調用其中的方法計算邊長為 10 的三角形面積和周長。
10 */
11 using System;
12 using System.Collections.Generic;
13 using System.Linq;
14 using System.Text;
15 using System.Threading.Tasks;
16
17 namespace SecondAssignment
18 {
19 //計算特定長度等邊三角形的周長和面積。
20 interface IMeasure
21 {
22 int Length(int s); //計算周長
23 int Area(int s); //計算面積
24 }
25 class TClass : IMeasure
26 {
27 //求周長
28 int IMeasure.Length(int s)
29 {
30 int _length = s * 3;
31 return _length;
32 }
33 //求面積
34 int IMeasure.Area(int s)
35 {
36 double h = Math.Sin(Math.PI/3) * s; //角度不能直接輸入數值,需要 Math.PI 進行轉換
37 double _Area = (s * h) / 2;
38 return Convert.ToInt32(_Area);
39 }
40 //測試方法
41 static void Main(string[] args)
42 {
43 IMeasure T = new TClass();
44 Console.WriteLine("周長為:"+ T.Length(10)); //求周長
45 Console.WriteLine("面積為:" + T.Area(10)); //求面積
46 Console.ReadKey();
47 }
48 }
49 }
3. 接口、多重接口