類物件抽象類1

2021-06-22 22:46:35 字數 1177 閱讀 1922

介面呼叫//介面不能例項化,但可以用繼承的類例項化訪問

public inte***ce itest

void sayhello();

class myitest:itest

public void sayhello()

console.writeline("i am itest");

myitest one = new myitest;

itest   inte***ceobject = one as itest;

inte***ceobject.sayhello();//此處呼叫的是myitest的sayhello函式

抽象類  //虛擬成員和抽象函式不能是私有的private.只能是public 和protected

public abstract class aclasstest

public void sayhello();

protected void sayhello1();

//private void sayhello2();

class aclasstest:aclasstest

public override  void sayhello()

console.writeline("i am public");

protected  override  void sayhello1()

console.writeline("i am protected");

// public void sayhello2()

抽象類在繼承類中的實現叫override過載。介面在繼承類中的實現叫做函式的實現(換句話說,抽象類函式的實現是繼承類函式的過載,介面函式的實現就是繼承類的函式的方法體)

即:abstract不允許有方法體,必須被子類override過載。貌似抽象函式只能在抽象類中申明。

虛擬方法visutal,必須申明實現,必須有主體函式。所以抽象類中不可能有虛函式。虛函式可以被繼承類override,不過其它函式(public和protected)何嘗不是也可以override,我去。

最後,override相對在abstract的繼承類中用的比較多然後是在virsual中還是用的比較多

PHP 物件導向 抽象類繼承抽象類

抽象類繼承另外乙個抽象類時,不用重寫其中的抽象方法。抽象類中,不能重寫抽象父類的抽象方法。這樣的用法,可以理解為對抽象類的擴充套件。下面的例子,演示了乙個抽象類繼承自另外乙個抽象類時,不需要重寫其中的抽象方法。abstract class user abstract class vipuser ex...

PHP 物件導向 抽象類繼承抽象類

抽象類繼承另外乙個抽象類時,不用重寫其中的抽象方法。抽象類中,不能重寫抽象父類的抽象方法。這樣的用法,可以理解為對抽象類的擴充套件。下面的例子,演示了乙個抽象類繼承自另外乙個抽象類時,不需要重寫其中的抽象方法。abstract class user abstract class vipuser ex...

物件導向 抽象類

抽象 裡邊有未明確的東西。抽象類的特點 1 抽象方法一定在抽象類中。2 抽象方法和抽象類都必須被abstract關鍵字修飾。3 抽象類不可以用new建立物件,因為呼叫抽象方法沒意義。4 抽象類中的抽象方法要被使用,必須由子類複寫其所有的抽象方法後,建立子類物件呼叫。如果子類只覆蓋部分抽象方法,那麼該...