c#中的三个有关问题

1、c#如何用控制台设计一个表示二维表面上圆的类 Circle,它继承自类 Point,还包括表示圆半径的protected 类型的成员变量 r、获取和设置 r 值的 public 方法、计算圆面积的 public 方法?
2、c#如何用控制台设计一个表示二维表面上的点的类 Point,包括表示坐标位置的 protected 类型的成员变量 x 和 y,获取和设置 x 和 y 值的 public 方法?
3、c#如何用控制台设计一个表示二维表面上圆的类 Circle,它继承自类 Point,还包括表示圆半径的protected 类型的成员变量 r、获取和设置 r 值的 public 方法、计算圆面积的 public 方法?

C#直接用自动属性不香吗,干嘛按照java那种写法加getXX/setXX这种方法呢。。再不济framework2也有属性get/set来非public属性的访问

img


有帮助或启发麻烦点个采纳【本回答右上角】,谢谢~~有其他问题可以继续交流~

using System;
namespace ConsoleApp1
{
    public class Point
    {
        public int x { get; set; }
        public int y { get; set; }
    }
    public class Circle : Point
    {
        public int r { get; set; }
        public double GetArea()
        {
            return Math.PI * r * r;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            var circle = new Circle { x = 0, y = 0, r = 5 };
            Console.WriteLine(circle.GetArea());
            Console.ReadKey();
        }
    }
}


1和3是一样的吧,如下代码纯手打,仅供参考:

class Circle : Point
    {
        protected int r;

        public int GetR()
        {
            return r;
        }

        public void SetR(int r)
        {
            this.r = r;
        }

        public double Area()
        {
            return Math.PI * Math.Pow(r, 2);
        }
    }

    class Point
    {
        protected int x, y;

        public int GetX()
        {
            return x;
        }

        public void SetX(int x)
        {
            this.x = x;
        }

        public int GetY()
        {
            return y;
        }

        public void SetY(int y)
        {
            this.y = y;
        }
    }