接口类的使用
namespace test2
{
//定义一个游泳接口
interface ISwim
{
void Swim();//游泳
}
/// <summary>
/// 定义一个青蛙类
/// </summary>
public class Frog : ISwim
{
public void Swim()
{
//青蛙游泳的特性
}
}
/// <summary>
/// 定义一个鱼类
/// </summary>
public class Fish : ISwim
{
public void Swim()
{
//鱼游泳时的特性
}
}
}
抽象类的使用
namespace test2
{
/// <summary>
/// 定义一个抽象类鱼
/// </summary>
abstract public class AFish
{
public abstract void Swim();
}
public class 鲫鱼:AFish{
public override void Swim()
{
throw new NotImplementedException();
}
}
public class 金鱼 : AFish {
public override void Swim()
{
throw new NotImplementedException();
}
}
public class 鲤鱼 : AFish {
public override void Swim()
{
throw new NotImplementedException();
}
}
}
总结:
当在差异较大的对象间寻求功能上的共性时,使用接口。
当在共性较多的对象间寻求功能上的差异时,使用抽象基类。