inte***ce inter
//demoa,只需要其中乙個方法,就要實現介面的所有方法
class demoa implements inter
public void show2(){}
public void show3(){}
public void show4(){}
}//如果再來個demob,只用其中乙個方法,還要實現介面的所有方法
class demob implements inter
public void show2(){}
public void show1(){}
public void show4(){}
}class inte***cedemo4
}//問題:只需要部分功能,但是為了例項化,必須要全部覆蓋。
**的復用性很差。該如何解決呢?
abstract class demo implements inter //切記不能寫私有,建構函式是給子類初始化的,
私有了,就不能被繼承了
void show1(){}
void show2(){}
void show3(){}
void show4(){}
} //空實現
//可以用乙個類先把介面中的所有方法都是空實現。
該類建立物件沒有意義。所有可以將該類定義為抽象類
class demoa extends demo
class demob extends demo
沒有抽象方法的抽象類
抽象類不能例項化,它的作用就是產生子類的同時給於子類一些特定的屬性和方法.但是jdk中很多類中沒有抽象方法卻定義為了抽象類,如果只是為了讓其不能例項化的話,將構造器私有化也是可以的,為什麼要這麼做呢?一般來說如果抽象類中總要有些抽象方法去讓子類實現,但是沒有抽象方法的抽象類就和普通類差不多了,這種抽...
抽象類 抽象方法
抽象類 1.類名前有abstruct修飾。有構造方法。在建立抽象類的子類的時候,還是會先建立抽象父類的物件的。2.抽象類不能例項化是指不能手動的new。抽象方法 1.抽象方法 沒有方法體且需要用abstruct關鍵字修飾 作用 需要改變的地方都應該是抽象。抽象方法只能存在於抽象類或介面中。2.有抽象...
抽象類,抽象方法
1 抽象類中可以有實現的方法。抽象方法必須在抽象類中。using system using system.collections.generic using system.linq using system.text namespace test 抽象類可以包含抽象屬性 public int age...