繁体   English   中英

C#继承类

[英]C# inheritance classes

我正在尝试解决一个任务,但我不知道如何创建 Add 类以使程序正常工作。

我查了很多帖子,但没有找到解决方案。 我尝试为 Number、Text、...拥有 public,但在 Visual Studio 中,提示总是要求在Class : Add创建 public int new Number Class : Add

我知道我应该创建一个列表,我可以在其中添加文本和数字,然后如果数字然后解析……或者我应该使用索引器吗?

class Add
{
    //...............
}

class Class : Add
{
    public int Number { get; set; }
    public string Text { get; set; }
    public int NumberPlusOne()
    {
        return Number + 1;
    }
    public void Print()
    {
        Console.WriteLine("Number is " + Number);
        Console.WriteLine("Text is " + Text);
    }
}

class Program
{
    static void Main()
    {
        Add add = new Class();
        add.Number = 123;
        add.Text = "Hello!";
        add.Print();
        Console.WriteLine("Number + 1 = " + add.NumberPlusOne());
    }
}

像这样:一个基础抽象类 ( Add ) 和派生类 ( Class )覆盖了抽象方法

  // note "abstract"
  public abstract class Add {
    public abstract int Number { get; set; }
    public abstract string Text { get; set; }
    public abstract int NumberPlusOne(); 
    public abstract void Print();
  }

Class应该改成

  // note "override"
  class Class : Add {
     public override int Number { get; set; }
     public override string Text { get; set; }

     public override int NumberPlusOne()
     {
         return Number + 1;
     }

     public override void Print()
     {
         Console.WriteLine("Number is " + Number);
         Console.WriteLine("Text is " + Text);
     }
  }

//这是我的解决方案

interface Add
        {
            string text { get; set; }
            int number { get; set; }
            void Print();
            int NumberPlusOne();

        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM