program.cs

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

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

namespace Example10_9 {
    class Program {
        static void Main(string[] args) {
            //创建Circle类变量circle,并使用其作为参数创建MyClass型变量myClass
            Circle circle = new Circle(35);
            MyClass myClass = new MyClass(circle);

            //获取返回值,并输出其面积Area属性
            Circle circle1 = (Circle)myClass.MyOutput(circle);
            Console.WriteLine(circle1.Area);

            Console.ReadLine();
        }
    }

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

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

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

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

        #region IShape 成员

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

        /// <summary>
        /// Caculate方法
        /// </summary>
        public void Caculate() {
            Console.WriteLine("计算面积!");
        }

        #endregion
    }

    /// <summary>
    /// MyClass类
    /// </summary>
    class MyClass {
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="m_shape">IShape型参数</param>
        public MyClass(IShape m_shape) {
            m_shape.Caculate();
            Console.WriteLine(m_shape.Area);
        }

        /// <summary>
        /// MyOutput方法
        /// </summary>
        /// <param name="m_shape">IShape接口类型参数</param>
        /// <returns>IShape接口类型返回值</returns>
        public IShape MyOutput(IShape m_shape) {
            m_shape.Area = 100;
            return m_shape;
        }
    }
}

⌨️ 快捷键说明

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