Как создать подкласс в C#?

Как создать подкласс в C# для ASP.NET использование Visual Studio 2010?

5 ответов


вы имеете в виду это?

public class Foo
{}

public class Bar : Foo
{}

в этом случае Bar является подклассом.


вот пример написания ParentClass, а затем создания дочернего класса в качестве подкласса.

using System;

public class ParentClass
{
    public ParentClass()
    {
        Console.WriteLine("Parent Constructor.");
    }

    public void print()
    {
        Console.WriteLine("I'm a Parent Class.");
    }
}

public class ChildClass : ParentClass
{
    public ChildClass()
    {
        Console.WriteLine("Child Constructor.");
    }

    public static void Main()
    {
        ChildClass child = new ChildClass();

        child.print();
    }
}

выход:

Parent Constructor.
Child Constructor.
I'm a Parent Class.

вместо того, чтобы переписывать еще один пример наследования .Net, я скопировал достойный пример из веб-сайт Станции C Sharp.


вы имеете в виду наследование класса?

public class SubClass: MasterClass
{
}

на этой странице объясняет это так:

public class SavingsAccount : BankAccount
{
    public double interestRate;

    public SavingsAccount(string name, int number, int balance, double rate) : base(name, number)
    {
        accountBalance = balance;
        interestRate = rate;
    }

    public double monthlyInterest()
    {
        return interestRate * accountBalance;
    }
}

static void Main()
{
    SavingsAccount saveAccount = new SavingsAccount("Fred Wilson", 123456, 432, 0.02F);

    Console.WriteLine("Interest this Month = " + saveAccount.monthlyInterest());
}

если monthlyInterest метод уже существует в BankAccount класс (и объявляется abstract, virtual или override), то SavingsAccount определение метода следует отнести override, как пояснил здесь. Не использовать override переопределение таких методов класса приведет к предупреждению компилятора CS0108, которое может быть подавлено с помощью new как ошибочно указано здесь.


Если вы поместите класс В класс, это похоже на один.

public class Class1
{
   public class Class2
   {
      public void method1() 
      {
         //Code goes here.
      }
   }
}

затем вы можете ссылаться на подкласс, используя: Class1.Class2.method1().