JAVA與C++的差異(2)

<center>JAVA與C++的差異(2)</center>

JAVA的面向對象


類的所有方法,均為虛方法(虛函數(shù))

關鍵字 作用
instanceof 檢查當前類是否屬于某個類的派生類,返回值BOOL類型
extends 繼承關鍵字,聲明當前類繼承于什么基類
interface 聲明接口類, 無需實現(xiàn)代碼,僅為聲明接口,表明此類至少有一個純虛方法,無法擁有非StaticFinal之外的字段 ,接口方法默認為公有
implements 基類為接口類, 實現(xiàn)基類的純虛方法
final 相當于C++的Const
Abstraction 抽象類, 無法被實例的類, 一個純虛基類, 派生類繼承,必須實現(xiàn)基類的方法或繼續(xù)聲明為抽象的方法

繼承同C++, 關鍵字變?yōu)?code>extends
不支持多重繼承,但是提供多重繼承功能, 可以實現(xiàn)多個基類的方法(即多重繼承)

方法重寫規(guī)則

即C++的派生類對基類的虛函數(shù)覆蓋
派生類中同名,同參,同返回值,基類中屬性為publicprotect等可繼承的虛函數(shù)

? 重寫方法的參數(shù)列表應該與原方法完全相同。
? 返回值類型應該和原方法的返回值類型一樣或者是它在父類定義時的子類型。
? 重寫函數(shù)訪問級別限制不能比原函數(shù)高。舉個例子:如果父類方法聲明為公有的,那么子類中的重寫方法不能是私有的或是保護的。
? 只有被子類繼承時,方法才能被重寫。
? 方法定義為 final,將導致不能被重寫。
? 一個方法被定義為 static,將使其不能被重寫,但是可以重新聲明。
? 一個方法不能被繼承,那么也不能被重寫。
? 和父類在一個包中的子類能夠重寫任何沒有被聲明為 private 和 final 的父類方法。
? 和父類不在同一個包中的子類只能重寫 non-final 方法或被聲明為 public 或 protected 的方法。
? 一個重寫方法能夠拋出任何運行時異常,不管被重寫方法是否拋出異常。然而重寫方法不應該拋出比被重寫方法聲明的更新更廣泛的已檢查異常。重寫方法能夠拋出比被重寫方法更窄或更少的異常。

由于JAVA 無法使用C++的 ::作用域符, 所以提供了一個super的關鍵字,以供派生類調(diào)用基類的方法


多態(tài)

多態(tài)同C++, 派生類指針轉基類指針調(diào)用虛函數(shù), 由于JAVA沒有指針,則為引用賦值


接口

(類無法多重繼承)接口類可繼承多個接口:

public interface Hockey extends Sports, Event


JAVA包

JAVA包名同C++命名空間的作用
包名一般為小寫,避免與類的方法重名

包的導入用 import關鍵字

  • 可以使用 import 關鍵字和通配符(*)來導入。例如:

import packName.*;

  • 可以使用 import 關鍵字來導入類本身。例如:

import packName.ClassName;

注: 一個類的文件可以包含任意數(shù)量的導入語句。這些導入語句必須位于包聲明語句之后和類的定義語句之前。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • (一)Java部分 1、列舉出JAVA中6個比較常用的包【天威誠信面試題】 【參考答案】 java.lang;ja...
    獨云閱讀 7,257評論 0 62
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內(nèi)部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,687評論 18 399
  • 1、.java源文件: 一個以”.java“為后綴的源文件:只能有一個與文件名相同的類,可以包含其他類。 2、類方...
    Hughman閱讀 1,742評論 1 9
  • 對英國歷史只了解到皮毛的我,長久以來滿足于知道溫莎公爵就是那位不愛江山愛美人的英國國王。當要迎娶有過三段婚史的美國...
    吳玫閱讀 2,329評論 0 1
  • 我的結果: 我的代碼: 我的感受: 我在find_all獲取星級那里卡了一下,一直想找一個直接能返回數(shù)字的方法,但...
    bbjoe閱讀 471評論 3 0

友情鏈接更多精彩內(nèi)容