版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、張孝祥IT課堂Java就業(yè)培訓(xùn)教程主講教師:第四講 面向?qū)ο笙骂惖某欣^ 經(jīng)過承繼可以簡化類的定義 。Java只支持單承繼,不允許多重承繼。 可以有多層承繼,即一個類可以承繼某一個類的子類,如類B承繼了類A,類C又可以承繼類B,那么類C也間接承繼了類A。 子類承繼父類一切的成員變量和成員方法,但不承繼父類的構(gòu)造方法。在子類的構(gòu)造方法中可運用語句super(參數(shù)列表) 調(diào)用父類的構(gòu)造方法。 假設(shè)子類的構(gòu)造方法中沒有顯式地調(diào)用父類構(gòu)造方法,也沒有運用this關(guān)鍵字調(diào)用重載的其它構(gòu)造方法,那么在產(chǎn)生子類的實例對象時,系統(tǒng)默許調(diào)用父類無參數(shù)的構(gòu)造方法。 子類對象的實例化過程 分配成員變量的存儲空間并進展
2、默許的初始化,就是用new關(guān)鍵字產(chǎn)生對象后,對類中的成員變量按第三章的表3.1中的對應(yīng)關(guān)系對對象中的成員變量進展初始化賦值。綁定構(gòu)造方法參數(shù),就是new Person實踐參數(shù)列表)中所傳送進的參數(shù)賦值給構(gòu)造方法中的方式參數(shù)變量。 如有this()調(diào)用,那么調(diào)用相應(yīng)的重載構(gòu)造方法被調(diào)用的重載構(gòu)造方法又從步驟2開場執(zhí)行這些流程,被調(diào)用的重載構(gòu)造方法的執(zhí)行流程終了后,回到當前構(gòu)造方法,當前構(gòu)造方法直接跳轉(zhuǎn)到步驟6執(zhí)行顯式或隱式追溯調(diào)用父類的構(gòu)造方法(不斷到Object類為止,Object是一切Java類的最頂層父類,在本章后面部分有詳細講解),父類的構(gòu)造方法又從步驟2開場對父類執(zhí)行這些流程,父類的構(gòu)
3、造方法的執(zhí)行流程終了后,回到當前構(gòu)造方法,當前構(gòu)造方法繼續(xù)往下執(zhí)行。 進展實例變量的顯式初始化操作,也就是執(zhí)行在定義成員變量時就對其進展賦值的語句,如:執(zhí)行當前構(gòu)造方法的方法體中的程序代碼 子類對象的實例化過程思索:1).為什么super()和this()調(diào)用語句不能同時在一個構(gòu)造函數(shù)中出現(xiàn)?2).為什么super()或this()調(diào)用語句只能作為構(gòu)造函數(shù)中的第一句出現(xiàn)?覆蓋父類的方法 覆蓋方法必需和被覆蓋方法具有一樣的方法稱號、參數(shù)列表和前往值類型。假設(shè)在子類中想調(diào)用父類中的那個被覆蓋的方法,我們可以用super.方法的格式 。覆蓋方法時,不能運用比父類中被覆蓋的方法更嚴厲的訪問權(quán)限 。fi
4、nal關(guān)鍵字 在Java中聲明類、屬性和方法時,可運用關(guān)鍵字final來修飾。final標志的類不能被承繼。final標志的方法不能被子類重寫。final標志的變量(成員變量或部分變量)即成為常量,只能賦值一次。方法中定義的內(nèi)置類只能訪問該方法內(nèi)的final類型的部分變量,用final定義的部分變量相當于是一個常量,它的生命周期超出方法運轉(zhuǎn)的生命周期,將一個形參定義成final也是可以的,這就限定了我們在方法中修正方式參數(shù)的值。 public static final共同標志常量時,這個常量就成了全局的常量。 籠統(tǒng)類 java中可以定義一些不含方法體的方法,它的方法體的實現(xiàn)交給該類的子類根據(jù)本
5、人的情況去實現(xiàn),這樣的方法就是籠統(tǒng)方法,包含籠統(tǒng)方法的類就叫籠統(tǒng)類?;\統(tǒng)類必需用abstract關(guān)鍵字來修飾;籠統(tǒng)方法也必需用abstract來修飾?;\統(tǒng)類不能被實例化,也就是不能用new關(guān)鍵字去產(chǎn)生對象?;\統(tǒng)方法只需聲明,而不需實現(xiàn)。含有籠統(tǒng)方法的類必需被聲明為籠統(tǒng)類,籠統(tǒng)類的子類必需覆蓋一切的籠統(tǒng)方法后才干被實例化,否那么這個子類還是個籠統(tǒng)類。 接口(interface) 假設(shè)一個籠統(tǒng)類中的一切方法都是籠統(tǒng)的,我們就可以將這個類用另外一種方式來定義,也就是接口定義。接口是籠統(tǒng)方法和常量值的定義的集合,從本質(zhì)上講,接口是一種特殊的籠統(tǒng)類,這種籠統(tǒng)類中只包含常量和方法的定義,而沒有變量和方法的
6、實現(xiàn)。 接口中的成員都是public訪問類型的。接口里的變量默許是用public static final標識的 。我們可以定義一個新的接口用extends關(guān)鍵字去承繼一個已有的接口 我們也可以定義一個類用implements關(guān)鍵字去實現(xiàn)一個接口中的一切方法,我們還可以去定義一個籠統(tǒng)類用implements關(guān)鍵字去實現(xiàn)一個接口中定義的部分方法。 一個類可以承繼一個父類的同時,實現(xiàn)一個或多個接口,extends關(guān)鍵字必需位于implemnets關(guān)鍵字之前 。對象的類型轉(zhuǎn)換 子類對象可以自動轉(zhuǎn)換成父類 父類轉(zhuǎn)換成子類必需運用強迫轉(zhuǎn)換。 instanceof 操作符可以用它來判別一個實例對象能否屬于
7、一個類。 Object類及equals方法面向?qū)ο蟮亩鄳B(tài)性 1).運用程序不用為每一個派生類子類編寫功能調(diào)用,只需求對籠統(tǒng)基類進展處置即可。這一招叫“以不變應(yīng)萬變,可以大大提高程序的可復(fù)用性。2). 派生類的功能可以被基類的援用變量援用,這叫向后兼容,可以提高程序的可擴展性和可維護性。以前寫的程序可以被后來程序調(diào)用缺乏為奇,如今寫的程序如callA方法能調(diào)用以后寫的程序以后編寫的一個類A的子類, 如類D就了不起了。匿名內(nèi)部類 abstract class Aabstract public void fun1();class Outerpublic static void main(String
8、 args)new Outer().callInner(new A()public void fun1()System.out.println(implement for fun1););public void callInner(A a)a.fun1();異常 異常定義了程序中遇到的非致命的錯誤, 而不是編譯時的語法錯誤,如程序要翻開一個不存的文件、網(wǎng)絡(luò)銜接中斷、操作數(shù)越界、裝載一個不存在的類等。 try,catch語句 throws關(guān)鍵字 自定義異常與Throw關(guān)鍵字 如何對多個異常作出處置 我們可以在一個方法中運用throw,trycatch語句來實現(xiàn)程序的跳轉(zhuǎn) 一個方法被覆蓋時,覆蓋它
9、的方法必需扔出一樣的異?;虍惓5淖宇?。 假設(shè)父類扔出多個異常,那么重寫覆蓋方法必需扔出那些異常的一個子集,也就是說不能扔出新的異常。 包 package語句及運用package語句作為Java源文件的第一條語句。假設(shè)沒有package語句,那么為缺省無名包。 import語句及運用 jdk中常用的包java.lang-包含一些Java言語的中心類,如String、Math、Integer、System和Thread,提供常用功能。java.awt-包含了構(gòu)成籠統(tǒng)窗口工具集abstract window toolkits的多個類,這些類被用來構(gòu)建和管理運用程序的圖形用戶界面(GUI)。java.
10、applet-包含applet運轉(zhuǎn)所需的一些類。-包含執(zhí)行與網(wǎng)絡(luò)相關(guān)的操作的類。java.io-包含能提供多種輸入/輸出功能的類。java.util-包含一些適用工具類,如定義系統(tǒng)特性、運用與日期日歷相關(guān)的函數(shù)。訪問控制 類本身也有訪問控制,即在定義類的class關(guān)鍵字前加上訪問控制符,但類本身只需兩種訪問控制,即public 和默許,父類不能是private 和 protected,否那么子類無法承繼。public修飾的類能被一切的類訪問,默許修飾即class關(guān)鍵字前沒有訪問控制符的類,只能被同一包中的一切類訪問。 java的命名習(xí)慣 下面是java中的一些命名習(xí)慣,假設(shè)xxx,yyy,zzz分別是一個英文單詞的拼寫。包名中的字母一概小寫,如:xxxyyyzzz。類名、接口名該當運用名詞,每個單詞的首字母大寫,如:XxxYyyZzz。方法名,第一個單詞小寫,后面每個單詞的首字母大寫,如:xxx
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度新能源行業(yè)銷售人員2025年度勞動合同2篇
- 2025年住房公積金租房提取政策執(zhí)行效果評估合同3篇
- 二零二五年度農(nóng)村土地互換及農(nóng)業(yè)科技創(chuàng)新協(xié)議書
- 二零二五年度農(nóng)村房屋贈與合同附農(nóng)業(yè)科技研發(fā)合作協(xié)議
- 二零二五年度醫(yī)療影像設(shè)備加工承攬合同3篇
- 二零二五年度公司租賃車輛駕駛?cè)藛T考核及培訓(xùn)協(xié)議2篇
- 二零二五年度公司與自然人環(huán)保項目合作協(xié)議3篇
- 二零二五年度智能家電產(chǎn)品開發(fā)合作協(xié)議書2篇
- 2025年度網(wǎng)約貨車司機兼職服務(wù)協(xié)議3篇
- 2025年度環(huán)保型機械研發(fā)與生產(chǎn)合作協(xié)議3篇
- 麻醉科主任述職報告
- PDCA降低護士針刺傷發(fā)生率
- 申請失業(yè)保險金承諾書
- 工程竣工資料整理工程資料服務(wù)合同
- 智能化手術(shù)室介紹strykerisuite課件
- 水利機械施工方案
- 廣東省佛山市南海區(qū)大瀝鎮(zhèn)2023-2024學(xué)年九年級上學(xué)期期中物理試卷
- ESD內(nèi)部審核日程計劃表+內(nèi)審檢查表+內(nèi)審報告全套資料
- HSK標準教程5下-課件-L
- 電腦基礎(chǔ)知識
- 工程竣工預(yù)驗收簽到表
評論
0/150
提交評論