




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
引用變量的強制類型轉(zhuǎn)換2學(xué)習(xí)目標(biāo)知識目標(biāo)引用變量的強制數(shù)據(jù)類型轉(zhuǎn)換01能力目標(biāo)能正確完成強制數(shù)據(jù)類型轉(zhuǎn)換02引用變量的方法調(diào)用3引用變量只能調(diào)用該變量編譯時類型的方法引用變量不能調(diào)用該變量運行時類型的方法即使該變量所引用的對象確實包含該方法如果需要引用變量需要調(diào)用運行時類型的方法,則必須需要把引用變量強制類型轉(zhuǎn)換成運行時類型引用變量的方法調(diào)用4強制類型轉(zhuǎn)換需要借助于類型轉(zhuǎn)換運算符類型轉(zhuǎn)換運算符是小括號語法(type)variable引用變量的強制類型轉(zhuǎn)換5類型轉(zhuǎn)換運算符可以將一個基本類型變量轉(zhuǎn)換成另一個類型可以將一個引用類型變量轉(zhuǎn)換成其子類類型示例classBaseClass{……}classSubClassextendsBaseClass{……}publicclassTest{publicstaticvoidmain(String[]args){BaseClassbc=newSubClass();SubClasssc=(SubClass)bc;}}強制類型轉(zhuǎn)換示例6例如:基本數(shù)據(jù)類型之間的強制數(shù)據(jù)類型轉(zhuǎn)換publicclassConversionTest{publicstaticvoidmain(String[]args){doubled=13.4;longl=(long)d;//輸出:13System.out.println(l);inti=5;//試圖把一個數(shù)值類型的變量轉(zhuǎn)換為boolean類型,下面代碼編譯出錯//編譯時會提示:不可轉(zhuǎn)換的類型//booleanb=(boolean)in;}}強制類型轉(zhuǎn)換示例7例如:引用數(shù)據(jù)類型之間的強制數(shù)據(jù)類型轉(zhuǎn)換publicclassConversionTest{publicstaticvoidmain(String[]args){Objectobj="Hello";//obj變量的編譯時類型為Object,Object與String存在繼承關(guān)系,可以強制數(shù)據(jù)類型轉(zhuǎn)換//而且obj變量的運行時類型為String,所以運行時也可通過StringobjStr=(String)obj;System.out.println(objStr);//定義一個objPri變量,編譯時類型為Object,運行時類型為IntegerObjectobjPri=newInteger(5);//objPri變量的編譯時類型為Object,objPri的運行時類型為Integer//Object與Integer存在繼承關(guān)系,可以強制類型轉(zhuǎn)換,而objPri變量的實際類型是Integer//所以下面代碼運行時引發(fā)ClassCastException異常Stringstr=(String)objPri;}
}引用變量的強制類型轉(zhuǎn)換8強制數(shù)據(jù)類型轉(zhuǎn)換時的注意事項:基本類型之間的轉(zhuǎn)換只能在數(shù)值類型之間進行,這里所說的數(shù)據(jù)類型包括整數(shù)型、字符型和浮點型。但數(shù)值類型和布爾類型之間不能進行類型轉(zhuǎn)換。引用類型之間的轉(zhuǎn)換只能在具有繼承關(guān)系的兩個類型之間進行,如果是兩個沒有任何繼承關(guān)系的類型,則無法進行類型轉(zhuǎn)換,否則編譯時就會出現(xiàn)錯誤。如果試圖把一個父類實例轉(zhuǎn)換成子類類型,則這個對象必須實際上是子類實例才行(即編譯時類型為父類類型,而運行時類型是子類類型),否則將在運行時引發(fā)ClassCastException異常。Instanceof引用9強制類型轉(zhuǎn)換時可能出現(xiàn)ClassCastException異常強制數(shù)據(jù)類型轉(zhuǎn)換前應(yīng)先通過instanceof運算符來判斷是否可成功轉(zhuǎn)換publicclassConversionTest{publicstaticvoidmain(String[]args){ObjectobjPri=newInteger(5);//增加程序的健壯性
if(objPriinstanceofString){Stringstr=(String)o
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新媒體管理述職
- 紅色大氣新年工作計劃
- Halymecin-E-生命科學(xué)試劑-MCE
- 教育行業(yè)人才流失與吸引機制2025年創(chuàng)新研究與實踐報告
- 商洛市鎮(zhèn)安縣公立醫(yī)療衛(wèi)生機構(gòu)招聘考試真題2024
- 工業(yè)互聯(lián)網(wǎng)平臺自然語言處理技術(shù)在工業(yè)互聯(lián)網(wǎng)平臺數(shù)據(jù)挖掘中的應(yīng)用報告
- 2025至2030汽車彈簧行業(yè)風(fēng)險投資態(tài)勢及投融資策略指引報告
- 2025年天然氣水合物開采技術(shù)地質(zhì)勘探與評價技術(shù)報告
- 2025至2030大豆肽行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 食品飲料行業(yè)電商運營中的移動營銷效果評估與優(yōu)化報告
- 《勞動保護知識》課件
- 充血性心力衰竭患者利尿劑抵抗
- 手足口病防治口腔護理包
- 地下停車場保潔工作流程(完整資料)
- 低應(yīng)變檢測技術(shù)原理講義圖文豐富
- 全國職業(yè)院校技能大賽資源轉(zhuǎn)化工作辦法
- 沁水縣農(nóng)業(yè)農(nóng)村局2019年沁水縣玉米病蟲害綠色防控示范基地建設(shè)實施方案
- 中國古代文學(xué)史(全套)課件
- 普通高考考生戶籍情況審查登記表
- 暴力恐怖襲擊事件
- 金屬纏繞墊(1002)要點課件
評論
0/150
提交評論