在 C# 中,在一个抽象类中,提供 method1 实现和 method2 作为抽象。我可以在子类中同时覆盖 method1 和 method2。那么,抽象方法和非抽象方法有什么区别。
abstract class baseclass
{
public void nonabstract_method()
{
Console.WriteLine("non abstract method in base class with implementation");
}
public abstract void abstract_method();//abstract method declaration
}
class childClass1: baseclass
{
public void nonabstract_method()
{
Console.WriteLine("non abstract method in child class 1 with implementation");
}
public override void abstract_method()
{
Console.WriteLine("abstract method in child class 1 with implementation");
}
}
class childClass2 : baseclass
{
public void nonabstract_method()
{
Console.WriteLine("non abstract method in child class 2 with implementation");
}
public override void abstract_method()
{
Console.WriteLine("abstract method in child class 2 with implementation");
}
static void Main(string[] args)
{
childClass2 objClass2 = new childClass2();
objClass2.nonabstract_method();
objClass2.abstract_method();
childClass1 objClass1 = new childClass1();
objClass1.nonabstract_method();
objClass1.abstract_method();
Console.ReadLine();
}
}