抽象类是指加了abstract字段修饰的类,其无法被实例化,但可以利用里氏替换原则作为容器去装载子类对象,抽象类里面可以额外地去写抽象方法。
抽象方法是指在方法前有abstract修饰的方法,此类方法仅能写在抽象类中,且不允许实现方法体,访问修饰须为public或protected。继承了抽象类的子类必须在其类内部通过override实现抽象方法的方法体。
cs
namespace ConsoleApp11
{
abstract class Fruits
{
public string name;
abstract public void Bad();
}
class Apple : Fruits
{
public override void Bad()
{
Console.WriteLine("苹果坏了");
}
}
class Program
{
static void Main(string[] args)
{
Fruits f = new Apple();
f.Bad();
}
}
}