Как создать подкласс в 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 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()
.