java基礎高新技術博客-大牛1-面向對象_第1頁
java基礎高新技術博客-大牛1-面向對象_第2頁
java基礎高新技術博客-大牛1-面向對象_第3頁
java基礎高新技術博客-大牛1-面向對象_第4頁
java基礎高新技術博客-大牛1-面向對象_第5頁
免費預覽已結束,剩余33頁可下載查看

下載本文檔

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

文檔簡介

程序員JAVAJAVA2013-05-1813:25184(0)收藏-------androidjavajava-面向對象的概象

類與對象的關對象即是該類事物的實實在在的被。而局部變量作用于函數或者語句中。[java][java]viewClassCar//Car{ Stringcolor= intnum= viodshow()//{ System.out.println("color="+color+"..num="}11.class publicstaticvoidmain(String[] CarcnweCar();//建立對象,c c.colorblue";// [java][java]view1.1.publicstaticvoidshow(Carc.num=7.//調用:show(new6.c.color=2.封裝封裝:是指隱藏對象的屬性細節,僅對外提供公共將變化將不需要對外提供的內容都隱把屬性都隱藏,提供公共方法對其。之所以對提供方式,就因為可以在方式中加入邏輯判斷等語句,對訪private(私有)關鍵[java]view被的成員只在本類中有效。[java]viewclass2. //將age以后,類以外即使建立了對象也不能直 privateint 類中提供對應age的方 publicvoidsetAge(inta)// if(a>0&&a<130)//在方式中加入邏輯判斷語 age= System.out.println("feifa publicintgetAge()// return privatevoidspeak()//{ class{publicstaticvoidmain(String[]{p=new}對象立就會調用與之對應的構造函數對 立就運行,而且優先于構造函數執行this關鍵特點:this代表其所在函數所屬對象的(代表本類對象的[java][java]viewclass2.2. privateStringprivateint需求:給人定義一個用于比 是否相同的功能。也就是是否是同齡人publicboolean{returnthis.age==p.age;//誰調用這個方法,this} publicstaticvoidmain(String[]{p1=p2=booleanb System.out.println(b);//輸出結果為}static(靜態)關鍵this)

靜對象中的特有數據要定 靜態存在于

沒 [java]view[java]viewclass2. Stringname;// staticStringcountryCN";//靜態的成員變量(類變量) publicvoid System.out.println(name+ 9.11.class publicstaticvoidmain(String[] p=new(); = 類變量生命周期最長,隨著類的而。實例變量生命周期隨著對象的而。{}{}{}{}[java][java]view1.class2. 19.classChildextends {}{}class{publicstaticvoidmain(String[]{Childc=new}原因:先給兩個類初始化,再給對象初始化,最后給c這個對象初始化。(父類執 個人總本節要理解java面前對象是什么,明白對象的建立與對象在內存中的方式和狀態,以及掌握所學關鍵字,掌握封裝的好處及程序員JAVAJAVA2013-05-2114:08182(0)收藏-------androidjavajava--單例設計模為了避免其他程序過多建立該類對象。先其他還為了讓其他程序可以到該類對象,只好在本為了方便其他程序對自定義對象的,可以對提供一些方式將構造函數[java]view[java]view1.class2. privateint privateStudent(){}// privatestaticStudentsnewStudent();// publicstaticStudentgetInstance()// return publicvoidsetAge(int this.age= publicint return {Students1=}Students2=publicstaticvoidmain(String[]20.class[java][java]view1.1.classprivatestaticSinglesnewSingle();//SinglepublicstaticSinglereturn9.}{private2.[java][java]view1.1.classprivatestaticSinglesnull;//SinglepublicstaticSinglegetInstance()//調用了getInstanceprivate2. s=new return 繼承的概子類可以直接父類的非私有的屬性和行為,通過classSubDemoextendsDemo{}[java][java]view1.1.//String5.7.{voidstudy()//6.classStudentint2. System.out.println("good 14.classWorkerextends//繼承父 voidwork()// System.out.println("good 22.class publicstaticvoidmain(String[] Students=new ="zhagnsan";//繼承了父類,直接父類的屬 繼承的特classSubDemoextendsDemoassSubDemoextendsDemo1,Demo2...//錯誤子類對象不確定要運行哪一個。但是java保留這種機制。并用另一種Java支持多層繼承(繼承體系)classA{}classBextendsA{}classCextendsB{}

的功能,包括基本的類與類之間要有所屬(“isa”)關系,xx1xx2superthissupersuper函數覆 限[java][java]view1.class{ voidshow()//{ System.out.println("fu} voidspeak()//{ 13classZiextendsFu// voidspeak()// voidshow()// System.out.println("zi 25.class publicstaticvoidmain(String[] Ziz=new 子類實例化過子類中所有的構造函數默認都會父類中空參數的構造函[java]viewthis或者super語句指定要的構造函數。[java]viewclass2. intnum num= System.out.println("fu 9.11classZiextendsFu// System.out.println("zi 20.class publicstaticvoidmain(String[] Ziz=new 29.fu30.zifinal

[java]view類只能被final修飾的局部變量。final[java]viewclass2. publicstaticfinaldoublePI3.14;//final變 finalvoidshow()// 6.7.classSubDemoextends8. //voidshow()個人總結java分例設計模式的兩種體現。要明白繼承的概念,java中不能多繼程序員JAVAJAVA2013-05-2509:49170(0)收藏-------androidjavajava--抽象類和抽象方法必須 返回值類型函數名(參[java][java]view1.abstrackclassStudent//{ abstrackvoidstudy();//}6.classBaseStudentextendsStudent//{ voidstudy()//{ System.out.prinln("base 14classAdvStudentextendsStudent// voidstudy()// System.out.println("Adv 22.class publicstaticvoidmain(String[] [java][java]view對員工建模,員工包含3個屬性: abstrackclassEmployee//{//3privateStringprivateStringprivatedoubleEmployee(Stringname,Stringid,double{=this.id=this.pay= voidwork();//classManagerextendsEmployee//{privateintbonus;// Manager(Stringname,Stringid,doublepay,intbonus)//經理類自定義構造函{this.bonus= publicvoidwork()//{System.out.println("manager classProextendsEmployee//{ Pro(Stringname,Stringid,Stringpay)// publicvoidwork()// System.out.println("pro 48.class publicstaticvoidmain(String[] abstrack接格式:interface成員常量:publicstatic成員函數:publicabstrack(public接口是對外的規則類與接口之間是實現關系,而且類可以繼承一個類的同時[java]view[java]erfacepublicstaticfinalintNUM=erfacevoid17classTestextendsDemoimplementsInter,InterA//Demopublicvoid22.classpublicvoid12.class8.2.{System.out.println(t.NUM);//Test實現了Inter}//Test實現了Inter接口,通過類名調用被staticTestt=newpublicstaticvoidmain(String[]多貓這個對象對應的類型是貓類型:貓x=new貓(); y=new貓父類型指向子類對象。體現:父類或者接口的指向或者接收自己的子類對象作用:多態的存在提高了程序的擴展性和后期可性 變量所屬的類中是否有所調

成員變量:只看變量所屬的類。2.2.4.classCatextendsAnimal//{publicvoid{}publicvoid {classDogextendsAnimal//{publicvoid{}publicvoid{}classPigextendsAnimal//{publicvoid[java][java]viewclassclassAnimal//voidvoideat();//} publicvoid{ class{publicstaticvoidmain(String[]{Animala=newCat();//類型提升。向 Catc=(Cat)a;//強制將父類 轉成子類類型,向 function(new publicstaticvoidfunction(Animala)//Animala=new{if(ainstanceof{Catc= elseif(ainstanceof{Dogc=}}Animala=newCat();//類型提升,向上Catc=(Cat)a;//強制將父類的轉成子類類型,向。 :用于判斷對象的類型。對象 intanceof類型(類 classclassFu//{intnum=staticintnum2=void{System.out.println("fu}void{System.out.println("fu}staticvoid[java][java]view{System.out.println("fu}classZiextendsFu//{intnum=staticintnum2=voidmethod1()// System.out.println("zi voidmethod3()//{System.out.println("zi staticvoid{System.out.println("zi class{publicstaticvoidmain(String[]{FufnewZi();//f.method1();//打印“zimethod_1”,父 指向子類對f.method2();//打印“fumethod_2”Fuf=new 型變量所屬的類,這個地方是FuZiz=newFuf=newf.method4();//輸出結果:“fuZiz=newz.method4();//輸出結果:“zi Fuf=newZiz=new}

在編譯時期:參閱型變量所屬的類中是否有調無論編譯和運行,都參考左邊(型變量所屬的類)類當描述事物物的還有事物,該事物用類來描述。因為將一個類定義在另一個類的里面,對里面那個類就稱為類(內置類,特點:類可以直接外部類中的成員,包括私有成員。而外部類要類中的成員必須要建立類的對象。privatestaticstatic類只能外部類中的靜態成員。也可以直接外部類中的成員,同時可以所在局部中的final類:就是類的簡化寫法格式為:new外部類名或者接口名(){覆蓋類或者接口中的代簡單類示例代碼[java][java]view1.1.classprivateintx={void//intx=}voidInnerin=new}{Outerout=newpublicstaticvoidmain(String[]20.class{}System.out.println("innner{//intx=class 2. //Outer.InnerinnewOuter().newInner(); 2,可以直 外部類中的成員,因為還持有外部類中 但是不可 它所在的局部中的變量。只 class{intx=void{finalinty=4;//只 被final修飾的局部變class{void[java][java]view{}}newInner().function();//}class{publicstaticvoidmain(String[]{Outerout=new}[java][java]view classAbsDemo//2. void4.5.class6. intx= publicvoid newAbsDemo()// intnum= void 20.class publicstaticvoidmain(String[] new 異 trycatchfinallyExceptionErrorThrowable void。|---->printStackTrace(PrintStreamthrowsthrows用于標識函數出的異常 >throw[java][java]view2.2. .6. 8.8.9.finally[java]view[java

溫馨提示

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

評論

0/150

提交評論