【发布时间】:2011-05-13 20:21:09
【问题描述】:
如何使用 Visual Studio 2010 在 C# 中为 ASP.NET 创建子类?
【问题讨论】:
标签: c# oop subclassing
如何使用 Visual Studio 2010 在 C# 中为 ASP.NET 创建子类?
【问题讨论】:
标签: c# oop subclassing
这是一个编写 ParentClass 然后创建 ChildClass 作为子类的示例。
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();
}
}
输出:
父构造函数。 子构造函数。 我是家长班。我没有重写另一个 .Net 继承示例,而是从 C Sharp Station website 复制了一个不错的示例。
【讨论】:
This page解释得很好:
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,如@ 987654322@。不使用 override 重新定义此类方法将导致 CS0108 编译器警告,可以通过使用 new 来抑制,如混淆所述 here。
【讨论】:
你的意思是类继承吗?
public class SubClass: MasterClass
{
}
【讨论】:
你是这个意思吗?
public class Foo
{}
public class Bar : Foo
{}
在这种情况下,Bar 是子类。
【讨论】: