C#抽象類 abstract

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();


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章