abstract class ShapesClass
{
abstract public int Area();
public void FuncA()
{
//Do Something
}
}
class Square:ShapesClass
{
int x, y;
public override int Area()
{
retrun x*y;
}
public void FuncB()
{
//Do Something
}
}
抽象类在类的基础上加以抽象,比如:动物 定义为抽象类,老虎、狮子都属于动物,动物就是一个抽象类。注: 抽象类是不能被实例化,抽象类中的抽象方法没有具体实现即没有方法体。
如果一个类继承于一个派生类,那么这个类必须要实现抽象类中的抽象方法。
例子:
abstract class ShapesClass
{
abstract public int Area();
}
class Square:ShapesClass
{
int x, y;
public override int Area()
{
retrun x*y;
}
}
上面的方法如果ShapesClass内部有非抽象方法
如
由于ShapesClass 是抽象类所以不能实例化。如果想调用ShapesClass的非抽象方法需要实例化继承类,通过继承类的实例来调用抽象类的非抽象方法。
Square sq=new Square();
sq.FuncB();
sq.FuncA();