我无法使用 setter 和 getter 设置和调用值

苦的

学习二传手

我正在制作一个控制台日志应用程序,在其中创建一个 Box 类并创建一个对象并使用 setter 和 getter 设置值:宽度、高度和长度。我在 github 上引用了一个解决方案,但我还没有让它工作。我不知道我在哪里犯错了。

我的代码

using System;

namespace ClassDemo2
{
    class Box
    {
        private double _width;
        private double _height;
        private double _length;

        public double Width
        {
            get { return _width; }
            set { this._width = Width; }
        }

        public double Height
        {
            get { return _height; }
            set { this._height = Height; }
        }

        public double Length
        {
            get { return _length; }
            set {this._length = Length; }
        }

        public double volume()
        {
            return Width * Height * Length;
        }

    }

    public class Program
    {
        static void Main(string[] args)
        {
            Box box = new Box();

            //Set value
            box.Width = 12;
            box.Height = 12;
            box.Length = 12;

            //Get value
            double width = box.Width;
            double height = box.Height;
            double length = box.Length;

            Console.WriteLine("Box properties");
            Console.WriteLine("Width: {0}", width);
            Console.WriteLine("Height: {0}", height);
            Console.WriteLine("Length: {0}", length);
            Console.WriteLine("Volume: {0}", box.volume());
        }
    }

}

控制台窗口

在此处输入图像描述

RCS

Box 类中的设置器没有做任何事情。设置器没有为 Box 类中的私有字段分配值。

您也可以完全删除这些字段并使用自动实现的属性

例如:

class Box
{
    public double Width { get; set; }

    public double Height { get; set; }

    public double Length { get; set; }

    public double Volume()
    {
        return Width * Height * Length;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章