更新時間:2020-05-25 16:27:44 來源:動力節點 瀏覽2364次
普通類可以直接產生實例化對象,并且在普通類之中可以包含有構造方法、普通方法、static方法、常量、變量的內容。而所謂的抽象類就是指在普通類的結構里面增加抽象方法的組成部分,抽象方法指的是沒有方法體的方法,同時抽象方法還必須使用abstract關鍵字進行定義。擁有抽象方法的類一定屬于抽象類,抽象類要使用abstract聲明。
Ø 此時抽象類已經被成功的定義出來,但是如果要想使用抽象類則必須遵守如下原則:
Ø 抽象類必須有子類,即:每一個抽象類一定要被子類所繼承(使用extends關鍵字),但是在Java中每一個子類只能夠繼承一個抽象類,所以具備有單繼承局限;
Ø 抽象類的子類(子類不是抽象類)必須覆寫抽象類之中的全部抽象方法(強制子類覆寫);
Ø 抽象類的對象實例化需要依靠子類完成,采用向上轉型的方式處理
正確使用抽象類
Ø 抽象類里面由于會存在一些屬性,那么在抽象類之中一定會存在構造方法,目的:為屬性初始化,并且子類對象實例化的時候依然滿足于先執行父類構造,再調用子類構造的情況。
Ø 抽象類不能夠使用final定義:因為抽象類必須有子類,而final定義的類不能夠有子類;
Ø 抽象類中可以沒有任何抽象方法,但是只要是抽象類,那么依然不能夠直接使用關鍵字new實例化對象。
Ø 抽象類中依然可以定義內部的抽象類,而實現的子類也可以根據需要選擇是否定義內部類來繼承抽象內部類。
Ø 外部抽象類不允許使用static聲明,而內部的抽象類允許使用static聲明,使用static聲明的內部抽象類就相當于是一個外部抽象類,繼承的時候使用“外部類.內部類”的形式表示類名稱。
Ø 抽象類中,如果定義有static屬性或方法的時候,都可以在沒有對象的時候直接調用。
Java技術相關內容
Java抽象類:http://m.dabaquan.cn/tutorial_java_advance/609.html
以上就是動力節點java培訓機構的小編針對“編程技術分享,Java中抽象類”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習