第二章 類與對(duì)象 (續(xù)) - 武漢大學(xué)_第1頁
第二章 類與對(duì)象 (續(xù)) - 武漢大學(xué)_第2頁
第二章 類與對(duì)象 (續(xù)) - 武漢大學(xué)_第3頁
第二章 類與對(duì)象 (續(xù)) - 武漢大學(xué)_第4頁
第二章 類與對(duì)象 (續(xù)) - 武漢大學(xué)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、public class f public int xy(int x,int y)int m;m=4*x*x+5*y*y+2*x*y;return m;z=4*x*x+2*x*y+5*y*ypublic class e public static void main(String args)int z; f xplugy =new f();z=xplugy.xy(2,3);System.out.println(z);第二章第二章 類與對(duì)象類與對(duì)象 (續(xù))(續(xù))本章要點(diǎn)本章要點(diǎn)一、構(gòu)造函數(shù)一、構(gòu)造函數(shù)二、方法二、方法三、重載方法三、重載方法四、四、main方法方法五、五、this一、構(gòu)造函數(shù)一、

2、構(gòu)造函數(shù)使用目的:給對(duì)象進(jìn)行初始化,這種初始化動(dòng)作在使用目的:給對(duì)象進(jìn)行初始化,這種初始化動(dòng)作在new 返回新創(chuàng)返回新創(chuàng)建對(duì)象的引用前完成建對(duì)象的引用前完成!注:!注: 構(gòu)造函數(shù)與它要初始化的類同名構(gòu)造函數(shù)與它要初始化的類同名 構(gòu)造函數(shù)是給對(duì)象賦初值,沒有返回值構(gòu)造函數(shù)是給對(duì)象賦初值,沒有返回值 構(gòu)造函數(shù)不能被程序顯示調(diào)用構(gòu)造函數(shù)不能被程序顯示調(diào)用 構(gòu)造函數(shù)可以有零個(gè)或多個(gè)自變量構(gòu)造函數(shù)可以有零個(gè)或多個(gè)自變量 構(gòu)造函數(shù)可以在類中由編程者定義,如果編程者沒有定義,構(gòu)造函數(shù)可以在類中由編程者定義,如果編程者沒有定義,系統(tǒng)將自動(dòng)生成一個(gè)構(gòu)造函數(shù)系統(tǒng)將自動(dòng)生成一個(gè)構(gòu)造函數(shù) 構(gòu)造函數(shù)可以通過重載實(shí)現(xiàn)不同

3、的初始化方法構(gòu)造函數(shù)可以通過重載實(shí)現(xiàn)不同的初始化方法public class jint a;boolean b;public static void main(String atr) j k=new j(); System.out.println(k.a); System.out.println(k.b); class Cat private float weight;private String color;public String getColor()return color;public float getWeight()return weight;Cat(String s)color

4、=s;System.out.println(Its a + s+ cat.);Cat(String s,float w)color=s;weight=w;System.out.println(Its a + s+ cat and weight +w+kg.);public class testConstructor1public static void main (String args)Cat catA=new Cat(black);System.out.println(The cat weight +catA.getWeight()+kg.);Cat catB=new Cat(whight

5、,0.9f);/Cat catc=new Cat();靜態(tài)初始化靜態(tài)初始化靜態(tài)初始化只對(duì)類進(jìn)行初始化而不是對(duì)象,他操作的一靜態(tài)初始化只對(duì)類進(jìn)行初始化而不是對(duì)象,他操作的一定是類的靜態(tài)屬性,他是在該類加在內(nèi)存時(shí)自動(dòng)調(diào)用定是類的靜態(tài)屬性,他是在該類加在內(nèi)存時(shí)自動(dòng)調(diào)用的的public class AboutStaticConstructorstatic int objectInitialNumber;static objectInitialNumber=1001;AboutStaticConstructor()objectNo=objectInitialNumber+; private int ob

6、jectNo;public int getobjectNo() return objectNo;public static void main(String arg)AboutStaticConstructor number1=new AboutStaticConstructor();AboutStaticConstructor number2=new AboutStaticConstructor();AboutStaticConstructor number3=new AboutStaticConstructor();System.out.println(number1.getobjectN

7、o();System.out.println(number2.getobjectNo();System.out.println(number3.getobjectNo();public class TestIdint personid;static int id;static id=1;public TestId()personid=id+;public static void main (String arg)TestId id1=new TestId();System.out.println(id1.personid);TestId id2=new TestId();System.out.

8、println(id2.personid);二、方法二、方法方法是一個(gè)命名的代碼塊,用來完成一定的特殊功能,方法是一個(gè)命名的代碼塊,用來完成一定的特殊功能,它可以輸入不同的自變量,而得到不同的返回值,它它可以輸入不同的自變量,而得到不同的返回值,它可以把程序中特定的功能塊組合到一起,便于多次使可以把程序中特定的功能塊組合到一起,便于多次使用,也能使程序結(jié)構(gòu)變得清晰用,也能使程序結(jié)構(gòu)變得清晰public class TestFunction1public static void main (String args)long z=11;int x=1;for (x=3,z=1;x0;x-) z*=

9、x; System.out.println(3!= +z);for (x=6,z=1;x0;x-) z*=x; System.out.println(6!= +z);for (x=9,z=1;x0;x-) z*=x; System.out.println(9!= +z);public class TestFunction2public static void main(String args) TestFunction2 test=new TestFunction2(); test.factorial(3);test.factorial(6);test.factorial(9);static

10、void factorial(int n)int x=n;long m=1;for (;x0;x-) m*=x; System.out.println(n+!=+m);方法的定義方法的定義修飾符修飾符 返回值類型返回值類型 方法名(方法名(形參說明形參說明)throws 例外名例外名1,里外名里外名2,局部變量聲明;局部變量聲明;執(zhí)行語句組;執(zhí)行語句組; public class variablepublic static void main(String args)int j=0;for (int i=0;i10;i+) System.out.println(i in for loop:+i

11、); /System.out.println(i out of for loop:+i); System.out.println(j:+j);public class e public static void main(String args)int z; f xplugy =new f();z=xplugy.xy(2,3);System.out.println(z);public class fpublic int xy(int x,int y)int m;m=4*x*x+5*y*y+2*x*y;return m; 五、方法的重載五、方法的重載 方法重載具有在類中用相同的名字定義多個(gè)方法的能

12、方法重載具有在類中用相同的名字定義多個(gè)方法的能力,方法調(diào)用時(shí),編譯器根據(jù)傳遞給方法的參數(shù)個(gè)數(shù)力,方法調(diào)用時(shí),編譯器根據(jù)傳遞給方法的參數(shù)個(gè)數(shù)選擇正確的方法。這意味著重載的方法必須有不同數(shù)選擇正確的方法。這意味著重載的方法必須有不同數(shù)目或類型的參數(shù)(注意:不能通過返回值的類型來進(jìn)目或類型的參數(shù)(注意:不能通過返回值的類型來進(jìn)行方法重載)。行方法重載)。 方法重載是非常強(qiáng)大的有用特性。其思想就是基于不方法重載是非常強(qiáng)大的有用特性。其思想就是基于不同類型的參數(shù)創(chuàng)建有相同功能的方法。這就實(shí)現(xiàn)了單同類型的參數(shù)創(chuàng)建有相同功能的方法。這就實(shí)現(xiàn)了單個(gè)方法可以操作任何類型的幻想。系統(tǒng)提供的個(gè)方法可以操作任何類型的

13、幻想。系統(tǒng)提供的println方法就是很好的例子。方法就是很好的例子。 println方法的聲明如下:方法的聲明如下:println方法的聲明方法的聲明public void println()public void println(boolean x)public void println(char x)public void println(int x)public void println(long x)public void println(float x)public void println(double x)public void println(char x)public vo

14、id println(String x)public void println(Object x)方法重載的作用方法重載的作用 如前面給出的如前面給出的println方法的例子,我們只需要關(guān)心該方方法的例子,我們只需要關(guān)心該方法的作用,即打印,而不需要關(guān)心方法使用的具體的參法的作用,即打印,而不需要關(guān)心方法使用的具體的參數(shù)。數(shù)。 方法重載的作用就是,可以使我們只關(guān)心方法實(shí)現(xiàn)的作方法重載的作用就是,可以使我們只關(guān)心方法實(shí)現(xiàn)的作用。用。 理解好方法重載,便于和以后學(xué)到的方法覆蓋相區(qū)別。理解好方法重載,便于和以后學(xué)到的方法覆蓋相區(qū)別。/MethodOverload.java/演示方法的重載演示方法的重載public class MethodOverloadpublic void method()System.out.println(public void method();public void method(String s)System.out.println(public void method() + s);public static

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論