• C#使用多态求方形面积周长和圆的面积周长


      class class1
        {
            public static void Main(string[] args)
            {
                //使用多态求矩形面积与周长和圆的面积与周长
                Shape cl = new Circle(5);
                double clarea = cl.GetArea();
                double clpar = cl.GetPerimeter();
                Console.WriteLine("这个圆的面积是{0},周长是{1}", Math.Round(clarea, 2), Math.Round(clpar, 2));
    
                Shape sq = new Square(5, 10);
                double sqarea = sq.GetArea();
                double sqpar = sq.GetPerimeter();
                Console.WriteLine("这个方形的面积是{0},周长是{1}", Math.Round(sqarea, 2), Math.Round(sqpar, 2));
                Console.ReadKey();
            }
    
    
        }
    
    
    //声明一个抽像类
        public abstract class Shape
        {
            public abstract double GetArea();
            public abstract double GetPerimeter();
        }
    
    
    class Circle:Shape
        {
            private double _r;
    
            public double R
            {
                get {
                    return _r;
                }
                set {
                    _r = value;
                }
            }
    
            public Circle(double r)
            {
                this.R = r;
            }
            public override double GetArea()
            {
                return Math.PI * this.R * this.R;
            }
    
            public override double GetPerimeter()
            {
                return 2 * Math.PI * this.R;
            }
        }
    
    
    
     class Square : Shape
        {
            private double _height;
            private double _width;
    
            public double Height
            {
                get
                {
                    return _height;
                }
                set
                {
                    _height = value;
                }
            }
    
            public double Width
            {
                get {
                    return _width;
                }
                set {
                    _width = value;
                }
            }
            public Square(double w, double h)
            {
                this.Height = h;
                this.Width = w;
            }
            public override double GetArea()
            {
                return this.Width * this.Height;
            }
    
            public override double GetPerimeter()
            {
                return (this.Width + this.Height) * 2;
            }
        }
  • 相关阅读:
    移动自动化测试平台技术架构与智能设备选型
    自动遍历回归测试工具
    PO模式自动化测试用例与测试框架封装改造
    Appium自动化测试之IOS WebView和Safari
    微信小程序自动化测试
    Android Native和Hybrid两种架构采用Appium进行UI自动化
    JavaScript学习 Ⅶ
    JavaScript学习 Ⅵ (正则表达式)
    JavaScript学习 Ⅴ
    JavaScript学习 Ⅳ
  • 原文地址:https://www.cnblogs.com/zywf/p/4518249.html
Copyright © 2020-2023  润新知