program.cs

来自「c#开发宝典 光盘内容。本光盘主要为书中的源程序」· CS 代码 · 共 124 行

CS
124
字号
using System;
using System.Collections.Generic;
using System.Text;

namespace Example10_10 {
    class Program {
        static void Main(string[] args) {
            //创建Circle类变量circle
            Circle circle = new Circle(35);

            //分别调用两个Caculate方法
            IShape shape = (IShape)circle;
            shape.Caculate();

            I2DShape shape2d = (I2DShape)circle;
            shape2d.Caculate();

            Console.ReadLine();
        }
    }

    /// <summary>
    /// IShape接口
    /// </summary>
    interface IShape {
        /// <summary>
        /// Area属性
        /// </summary>
        int Area {
            get;
            set;
        }

        /// <summary>
        /// Caculate方法
        /// </summary>
        void Caculate();
    }

    interface I2DShape {
        /// <summary>
        /// Name属性
        /// </summary>
        string Name {
            get;
            set;
        }

        /// <summary>
        /// Caculate方法
        /// </summary>
        void Caculate();
    }

    /// <summary>
    /// Circle类继承IShape
    /// </summary>
    class Circle : IShape, I2DShape {
        /// <summary>
        /// area字段
        /// </summary>
        int area = 0;

        /// <summary>
        /// name字段
        /// </summary>
        string name = string.Empty;

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="m_Area">m_Area参数</param>
        public Circle(int m_Area) {
            area = m_Area;
        }

        #region I2DShape 成员

        /// <summary>
        /// Name属性
        /// </summary>
        string I2DShape.Name {
            get {
                return name;
            }
            set {
                name = value;
            }
        }

        /// <summary>
        /// Caculate方法
        /// </summary>
        void I2DShape.Caculate() {
            Console.WriteLine("I2DShape的Caculate方法!");
        }

        #endregion

        #region IShape 成员

        /// <summary>
        /// Area属性
        /// </summary>
        int IShape.Area {
            get {
                return area;
            }
            set {
                area = value;
            }
        }

        /// <summary>
        /// Caculate方法
        /// </summary>
        void IShape.Caculate() {
            Console.WriteLine("IShape的Caculate方法!");
        }

        #endregion
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?