java基礎第12天隨堂筆記_第1頁
java基礎第12天隨堂筆記_第2頁
java基礎第12天隨堂筆記_第3頁
java基礎第12天隨堂筆記_第4頁
java基礎第12天隨堂筆記_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第 12 天包&String回顧:異常:異常的體系異常的分類:編譯時異常、運行時異常怎么去書寫自定義異常類:1, 書寫的類必須繼承java 提供的異常類2, 需要在自定義異常類中的構造函數中書寫處理異常的功能異常的處理方案:1,: 自己不處理,交給別人人處理(最終還是需要一個捕獲來處理)2, 捕獲: 遇到異常,自己處理try、catch、finally第 12 天授課內容1、Object 概述(必須掌握如何查閱 API)2、Object 類中常用方法的介紹(掌握兩個經常需要重寫的方法)3、包的概念(了解)4、包和包之間的(掌握第二種方式)5、包和包之間的繼承&權限(掌握 java 中修飾符的權

2、限)6、eclipse 開發(fā)工具(會用就行,學習使用常用的快捷鍵)7、String 類介紹和特點(掌握 String 類的特性)8、String 類的方法介紹(掌握 String 類中常用的方法)1、 Object 概述在學習面象編程,遇到需求時,先去找有沒有解決問題的功能存在。這些解決問題的功能通常是封裝在類能類),使用這些功能類基本可以解決開發(fā)中大部分(例:文件、上傳)。問題:這些解決問題的功能類都在哪里?在 java 設計時,已經提供了很多解決問題的封裝類。這些解決問題的封裝類,統稱為:API在開發(fā)中,只要去相應的包(文件夾)中去找對應的封裝類就可以解決問題想要使用java 提供的解決各

3、種問題的 API,就需要先學會如何查閱 API 文檔1.1查閱 API 文檔的技巧查閱 API 的兩種方式:1, 使用“索引”查找相應的信息第二種:通常過定位包名稱,來查找相應的信息(前提:需要知道要查找的信息屬于哪個包)補充:1.2如何查閱源代碼在開發(fā)中,除了查閱 API 以外,還經常會查看 JDK 的源代碼,幫助解決開發(fā)中。在安裝 JDK 時,隨著 JDK 版本的安裝,在 JDK 安裝目錄也存在一個當前版本的 JDK 源碼文件查看源代碼的步驟:(前提:需要知道要查找的功能類屬于哪個包)1, 新建一個文件夾,并把 src.zip 文件解壓到創(chuàng)建的文件夾中2, 找到要查閱源代碼的功能類或接口(

4、異常類、錯誤類)3, 使用記事本之類的工具,打開要查看的源代碼文件1.3Object 類通過 API 的查閱,可以得到:1, Object 是java 提供的功能類(API 中的類)和開發(fā)自己書寫的類的父類(鼻祖類)2, 因為所有的類都繼承了 Object 類,所以繼承了 Object 類的子類可以使用 Ojbect 類中的功能疑問:既然自己定義的類也要繼承 Object 類,那為什么在代碼中沒有顯式書寫繼承 Object? Object 類屬于java.lang 包下。而 java.lang 包會被JVM 在運行時自動加載,繼承了 Object的子類也不需要顯式書寫,JVM 會自動為書寫的類

5、添加繼承。2、Object 類中常用方法的介紹2.1equals()方法需求:判斷學生是否為同齡人使用以上方式可以解決問題。面象:遇到需求時,先去找有沒有存在已經解決問題的功能(功能是封裝在類中)。有,就直接使用封裝了功能的功能類解決問題。以上需求中,是需要解決判斷是否為同齡人的功能。(其實就是一個判斷是否相等的功能)首先,去找java API 中是否有比較功能。問題:Student 類中不具備比較功能,但是,Student 類繼承了 Object 類,所以可以去 Object類中找是否存在解決問題的功能Object 類中的功能:使用 Object 類中的 eqauls 函數解決需求中:以上程

6、序運行結果不正確。分析:為什么使用 Object 類中的 equals 功能會存在結果不正確呢?查看 Object 類中的 equals 功能的源代碼運行結果:在 Object 類中的 equals 功能中使用”=”進行比較,而”=”兩邊使用的是對象存中的地址)。結論:Object 類中的 equals 方法中,比較的是堆中的地址是否相等(就是堆內單單使用 Object 類中的 equals 功能,并不能直接解決在開發(fā)中的做法是:重寫 Object 類中的equals 函數需求中。遇到這種情況,2.2toString()方法需求:輸出 Student 類的具體信息以上程序的運行結果,不符合需求

7、。要求是想要輸出學生類中的具體信息問題:為什么輸出 stu 時,顯示的結果:Student7ea06d25?為什么輸出的是一個查閱 System.out.prln()的源代碼地址?通過查閱源代碼,發(fā)現:在執(zhí)行 prln(Object)時,自動調用了 toString()方法toString 函數屬于 Object 類中的。在 Student 類中可以重寫toString 方法,讓程序輸出學生類的具體信息小結:在開發(fā)中,如果子類繼承父類時,父類中已經存在了解決問題的功能,但是父類中的功能并不能滿足子類的需求,這時,子類就需要重寫父類中的方法3、包的概念問題 1:在操作系統中同一盤符下可以存放兩個

8、完全相同的文件嗎?不可以。問題 2:現在就是希望把兩個完全相同的文件存放在同一盤符下,怎么解決?創(chuàng)建兩個不同名稱的文件夾,把這兩個存放的文件放在不同的文件夾下在開發(fā)中,經常會遇到相同名稱類,這時也需要使用不同的文件夾來解決存放相同名稱的類。在 java 中,文件夾的體現是包。(包是 java 程序中的體現,包在硬盤上的體現就是文件夾)結論:在 java 使用包來解決相同名稱類包的作用:就是用來管理 class 文件的包的使用:在 java 中使用關鍵字 package 來創(chuàng)建一個包,格式:packagedemo;/創(chuàng)建一個名為 demo 的包,屬于單層次包; /多層次包 包和包之間使用點分隔p

9、ackage案例:包的簡單使用分析錯誤:問題: 包是用來管理class 文件的,那么使用 javac 命令編譯后 class 文件應該放在com.demo 包中(而包在硬盤上的體現就是文件夾:com/demo 的文件夾)在使用javac 命令編譯時,沒有把生成的class 文件存放在包中在使用帶有包的類進行編譯和運行時,需要注意:1, 編譯時:使用 javac d 存放的路徑x.java2, 運行時:java 包名.x編譯時,使用 javac d 命令:運行時:使用 java 包名.類名包名規(guī)范:1, 包名稱全部都是小寫字母組成2, 當包名有多個時,中間使用點來分隔3, 在開發(fā)中,通常包的名稱

10、都是使用倒著書寫的例: 包名:cn.sh4、包和包之間的4.1包和包之間第一種使用關鍵字 package 創(chuàng)建包。方式案例:包和包之間進行第一個類,屬于 com.yi 包下第二個類,屬于 com.er 包下編譯:修改編譯錯誤:繼續(xù)編譯:修改編譯錯誤:注意:類只要被修飾為 public 后,就必須保證.java 文件的名稱和類名完全一模一樣一個.java 文件中只能書寫一個 public 類,可以書寫多個默認權限的類編譯:修改編譯錯誤:編譯運行結果:4.2包和包之間第二種方式以上程序書寫比較麻煩。java 為了簡化書寫,提供了另一種包和包之間類的使用關鍵字 import 導入需要的包下的類:方式

11、:導入cn.sh.demo.Student;import cn.sh.demo.*;/導入包下所有的類 import cn. .sh.demo.Student;/導入包下具體的類案例:使用 import 關鍵字改進之前的程序小結:package 用來創(chuàng)建包。在程序中是書寫在java 文件的第一行位置用來導入包下的類。 書寫在 package 下面,class 的上面.Demo1;.sh.Demo2;.sh.demo.Test;import cn.*;問題:以上導入了哪些內容?只導入 Demo1 類注意:在使用 import 導入多層次包時,只會導入當前包下的類,包下的子級目錄(子包)中的類不會

12、被導入5、包和包之間的繼承&權限之前學習面象時,提過兩個權限修飾符:public、private在 java 體系中,存在四種private - 默認權限(不權限:(從小到大)寫任何修飾符) - protected - publicprivate:只能在本類中。其它類(包含子類)都不能默認:在本類或同一個包中的其它類中protected:在本類中或 同一個包中的其它類中或 不同包中的子類public:沒有限制。任何包中的類都可以public權限:沒有任何限制protected權限:專門給子類使用的權限默認權限:同一個類中或同一個包中總結:java 中的權限private默認權限protecte

13、dpublic同一個類中YESYESYESYES同一個包沒有關系的類NOYESYESYES同一個包有關系的類NOYESYESYES不同包沒有關系的類NONONOYES不同包有關系的類NONOYESYES子類想使用父類中的 protected 成員函數,就必須先創(chuàng)建子類對象,利用子類對象調用父類中的成員函數注意:protected 只能修改成員函數或成員變量6、eclipse 開發(fā)工具6.1eclipse 介紹在開發(fā)中,java 程序經常會使用的專業(yè)開發(fā)工具:eclipse、NetBens eclipse 屬于開源的、免費。eclipse 工具屬于一個開發(fā),可以在這個上安裝開發(fā)各種語言的插件注意:eclipse 工具想要正常的運行,必須配置 JDK 環(huán)境變量eclipse 工具介紹:使用 eclipse 工具創(chuàng)建一個 java 工程(java 項目):在創(chuàng)建的項目中創(chuàng)建 java 程序:使用 eclipse 工具導入已經存在的 java 工程:6.2eclipse 常用快捷鍵介紹一些開發(fā)中常用的 eclipse 快捷鍵:代碼補全(單詞聯想): alt + /添加/取消 單行注釋: ctrl + /添加 多行注釋:ctrl + shift + /取消 多行注釋:ctrl + shift + 快速導包:ctrl + shift + o快

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論