版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Lesson4,主講人:孫鑫,,主要內(nèi)容,Java的常用包 “=”和“equals”的用法 基本數(shù)據(jù)類型與引用類型 String和StringBuffer 對(duì)象的克?。╟lone) 數(shù)組的相關(guān)操作 封裝類 Runtime類與Process類 Class類 設(shè)計(jì)模式,,Java的常用包,java.applet:包含一些用于創(chuàng)建Java小應(yīng)用程序的類。 java.awt:包含一些用于編寫(xiě)與平臺(tái)無(wú)關(guān)的圖形界面(GUI)應(yīng)用程序的類。 java.io:包含一些用作輸入輸出(I/O)處理的類。 java.lang:包含一些J
2、ava語(yǔ)言的基本類與核心類,如String、Math、Integer、System和Runtime,提供常用的功能,這個(gè)包中的所有類是被隱式導(dǎo)入的。 :包含用于建立網(wǎng)絡(luò)連接的類,與java.io同時(shí)使用完成與網(wǎng)絡(luò)有關(guān)的讀寫(xiě)。 java.util:包含一些實(shí)用工具類和數(shù)據(jù)結(jié)構(gòu)類。,,“=”和“equals”的用法,在Java中,boolean、byte、short、int、long、char、float、double這八種是基本數(shù)據(jù)類型,其余的都是引用類型。 “=”是比較兩個(gè)變量的值是否相等,“equals”是比較兩個(gè)對(duì)象變量所代表的對(duì)象的內(nèi)容是否相等。,
3、,對(duì)象的內(nèi)存分配圖,棧內(nèi)存,堆內(nèi)存,str1,str2,a,b,c,a,b,c,0088:4400,0088:4400,0088:4660,0088:4660,str1標(biāo)識(shí)的對(duì)象,str2標(biāo)識(shí)的對(duì)象,當(dāng)我們聲明一個(gè)引用類型變量時(shí),系統(tǒng)只為該變量分配了引用空間,并未創(chuàng)建 一個(gè)具體的對(duì)象;當(dāng)用new為對(duì)象分配空間后,將對(duì)象的引用賦值給引用變量。,,String str=“abc”; int i=3; float f=4.5f; char ch=a; boolean b=true; System.out.println(
4、str + i + f + ch + b); 針對(duì)String的“+”和“+=”,是Java中唯一被重載的操作符;在Java中,不允許程序員重載操作符。,String和StringBuffer,,String和StringBuffer,String類對(duì)象一個(gè)常量對(duì)象。 String str=“abc”; str=“def”; 在處理大量字符串的程序中,我們通常用StringBuffer來(lái)替代String。,,數(shù)組的內(nèi)存分配圖,基本數(shù)據(jù)類型一維數(shù)組內(nèi)存分配,棧內(nèi)存,堆內(nèi)存,num,c,0,0,0,0088:4400,
5、0088:4400,new int3產(chǎn)生的對(duì)象,,數(shù)組的內(nèi)存分配圖,基本數(shù)據(jù)類型一維數(shù)組內(nèi)存分配,棧內(nèi)存,堆內(nèi)存,num,c,0,0,0,null,0088:4400,new int3產(chǎn)生的對(duì)象,num=null;,,對(duì)象數(shù)組的內(nèi)存分配,棧內(nèi)存,堆內(nèi)存,students,null,Student students;,對(duì)象數(shù)組的內(nèi)存分配,堆內(nèi)存,students,c,0088:4400,0088:4400,new students3產(chǎn)生的對(duì)象,null,null,Student students; students=
6、new Student3;,null,棧內(nèi)存,對(duì)象數(shù)組的內(nèi)存分配,堆內(nèi)存,students,c,0088:4400,0088:4400,new students3產(chǎn)生的對(duì)象,null,null,Student students; students=new Student3; students0=new Student(“l(fā)isi”,18);,student0 標(biāo)識(shí)的 Student對(duì)象,lisi,18,0088:4660,0088:4660,棧內(nèi)存,函數(shù)的調(diào)用,在Java中,傳參時(shí),都是以傳值的方式進(jìn)行。 對(duì)于基本數(shù)據(jù)類型,傳遞的是數(shù)據(jù)的拷貝;對(duì)于引用類型,傳遞的引用的拷貝。,http:/ww
7、,函數(shù)的調(diào)用,x,main,change,棧內(nèi)存,y,4(3),3(4),4,3,class StringTest public static void change(int x,int y) x=x+y; y=x-y; x=x-y; public static void main(String args) int x=3; int y=4; change(x,y); System.out.println(x=+x); System.out.println(y=+y); ,x,y,,函數(shù)的調(diào)用,pt,main,change,棧內(nèi)存
8、,堆內(nèi)存,Point類的對(duì)象,pt,0088:4660,0088:4660,0088:4660,class StringTest public static void change(Point pt) pt.x=pt.x+pt.y; pt.y=pt.x-pt.y; pt.x=pt.x-pt.y; public static void main(String args) Point pt=new Point(); pt.x=3; pt.y=4; change(pt); System.out.println(x=+pt.x); System.out.println(y=+pt.y); class
9、Pointint x, y;,,對(duì)象的克隆(clone),為了獲取對(duì)象的一份拷貝,我們可以利用Object類的clone()方法。 在派生類中覆蓋基類的clone()方法,并聲明為public。 在派生類的clone()方法中,調(diào)用super.clone()。 在派生類中實(shí)現(xiàn)Cloneable接口。,,對(duì)象的克隆(clone),為什么我們?cè)谂缮愔懈采wObject的clone()方法時(shí),一定要調(diào)用super.clone()呢?在運(yùn)行時(shí)刻,Object中的clone()識(shí)別出你要復(fù)制的是哪一個(gè)對(duì)象,然后為此對(duì)象分配空
10、間,并進(jìn)行對(duì)象的復(fù)制,將原始對(duì)象的內(nèi)容一一復(fù)制到新對(duì)象的存儲(chǔ)空間中。,,數(shù)組的相關(guān)操作,在Java中,所有的數(shù)組都有一個(gè)缺省的屬性length,用于獲取數(shù)組中元素的個(gè)數(shù)。 數(shù)組的復(fù)制:System.arraycopy()。 數(shù)組的排序:Arrays.sort()。 在已排序的數(shù)組中查找某個(gè)元素:Arrays.binarySearch()。,,封裝類,針對(duì)八種基本數(shù)據(jù)類型定義的相應(yīng)的引用類型封裝類。,,Class類,在Java中,每個(gè)class都有一個(gè)相應(yīng)的Class對(duì)象。也就
11、是說(shuō),當(dāng)我們編寫(xiě)一個(gè)類,編譯完成后,在生成的.class文件中,就會(huì)產(chǎn)生一個(gè)Class對(duì)象,用于表示這個(gè)類的類型信息。 獲取Class實(shí)例的三種方式: (1)利用對(duì)象調(diào)用getClass()方法獲取該對(duì)象的Class實(shí)例; (2)使用Class類的靜態(tài)方法forName(),用類的名字獲取一個(gè)Class實(shí)例; (3)運(yùn)用.class的方式來(lái)獲取Class實(shí)例,對(duì)于基本數(shù)據(jù)類型的封裝類,還可以采用.TYPE來(lái)獲取相對(duì)應(yīng)的基本數(shù)據(jù)類型的Class實(shí)例。,,Class類,在運(yùn)行期間,如果我們要產(chǎn)生某個(gè)類的對(duì)象,Java虛擬機(jī)(JVM)會(huì)檢查該類型的Class對(duì)
12、象是否已被加載。如果沒(méi)有被加載,JVM會(huì)根據(jù)類的名稱找到.class文件并加載它。一旦某個(gè)類型的Class對(duì)象已被加載到內(nèi)存,就可以用它來(lái)產(chǎn)生該類型的所有對(duì)象。 newInstance() 調(diào)用類中缺省的構(gòu)造方法。,,Runtime類和Process類,每一個(gè)Java程序都有一個(gè)Runtime類的單一實(shí)例。 通過(guò)Runtime.getRuntime()獲取Runtime類的實(shí)例。 Runtime類是使用單例模式的一個(gè)例子。,,設(shè)計(jì)模式,在我們進(jìn)行程序設(shè)計(jì)時(shí),逐漸形成了一些典型問(wèn)題和問(wèn)題的解決方案,這就是軟件模式。 每一個(gè)模式描述了一個(gè)在我們程序設(shè)計(jì)中經(jīng)常發(fā)生的問(wèn)題,以及該問(wèn)題的解決方案。 當(dāng)我們碰到模式所描述的問(wèn)題,就可以直接用相應(yīng)的解決方法去解決這個(gè)問(wèn)題,這就是設(shè)計(jì)模式。,,設(shè)計(jì)模式,單例(Singleton)模式 (1)一個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例,這個(gè)類稱為單例類。 (2)單例類的一個(gè)最重要的特點(diǎn)是類的構(gòu)造方法是私有的,從而避免了外部利用構(gòu)造方法直接創(chuàng)建多個(gè)實(shí)例。,,單例類的實(shí)現(xiàn),class Singl
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2014年5月心理咨詢師二級(jí)《職業(yè)道德、理論知識(shí)》及答案解析
- 2025年物流管理師職業(yè)資格考試試卷及答案解析
- web安全題目及答案解析
- 2025年心理咨詢師二級(jí)考試模擬試題及答案,解析詳盡
- 重癥醫(yī)學(xué)科三基考試題目及答案解析(2025版)
- 2025年金融分析總監(jiān)資格認(rèn)證考試試題及答案解析
- 2026年皖西衛(wèi)生職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試題庫(kù)附答案解析
- 2026年湖北省黃石市單招職業(yè)適應(yīng)性測(cè)試模擬測(cè)試卷附答案解析
- 2026年撫州職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試模擬測(cè)試卷附答案解析
- 杭州師范大學(xué)附屬醫(yī)院公開(kāi)招聘高層次、緊缺專業(yè)人才36人參考題庫(kù)附答案解析
- 河南豫能控股股份有限公司及所管企業(yè)2026屆校園招聘127人筆試模擬試題及答案解析
- 2025年浙江省嘉興市嘉善縣保安員考試真題附答案解析
- 要謙虛不要驕傲課件
- 2026國(guó)家保安員資格考試題庫(kù)及參考答案【完整版】
- 微生物檢驗(yàn)質(zhì)控措施分析
- 2026年黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試題庫(kù)及參考答案詳解1套
- 婦科腫瘤保留生育功能治療策略
- 宮頸癌病理課件
- 2025東航股份綜合管理部招聘筆試歷年參考題庫(kù)附帶答案詳解
- YY/T 1973-2025醫(yī)用下肢外骨骼機(jī)器人
- 腫瘤晚期呼吸困難治療
評(píng)論
0/150
提交評(píng)論