using System;
namespace ConsoleApp2
{
abstract class Fruit // 抽象类,是从不同种类水果中抽象出来的类,不能用new对其进行实例化
{
public abstract void GrowInArea(); // 可以包含抽象方法
}
class Apple : Fruit
{
public override void GrowInArea()
{
Console.WriteLine("苹果,南北方"); // 子类对抽象方法进行重写
}
}
class Pinapple : Fruit
{
public override void GrowInArea()
{
Console.WriteLine("菠萝,南方");
}
}
class Program
{
static void Main(string[] args)
{
Fruit fruit;
fruit = new Apple();
fruit.GrowInArea();
fruit = new Pinapple();
fruit.GrowInArea();
Console.ReadKey();
}
}
}
如果一个类设计的目点是用来被其它类继承的,它代表一类对象的所具有的公共属性或方法,那个这个类就应该设置为抽象类。
在实现接口时,常写一个抽象类,来实现接口中的某些子类中所需的通用方法,接着在编写各个子类时,即可继承该抽象类来用。省去在每一个都要实现通用的方法的困扰。