2015年11月15日 星期日

C11_1 介面作為參數的例子

using System;
namespace C10_1
{
    public interface IShape
    {
        int Area
        { get; set; }
        void Caculate();
    }
    public class Square : IShape
    {
        int b = 0;
        #region IShape 成員
        public int Area
        {
            get { return b * b; }
            set { b = value; }
        }
        public void Caculate()
        {
            Console.WriteLine("開始計算面積...");
        }
        #endregion

    }
    public class MyClass
    {
        public MyClass(IShape shape)
        {
            shape.Caculate();
            Console.WriteLine("正方形面積為:{0}",shape.Area);
        }
    }
    public class Test
    {
        public static void Main()
        {
            Console.WriteLine("請輸入正方形邊長:");
            //建立Square 類別變數 square , 並使用期作為參數建立MyClass 形變數myClass
            Square square = new Square();
            square.Area = Convert.ToInt32(Console.ReadLine());
            MyClass myClass = new MyClass(square);
        }
    }
}

沒有留言: