資源描述:
《封裝繼承多態(tài)課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、(第一單元)類的封裝繼承多態(tài)語默制造本單元內(nèi)容概述類類的封裝性類的繼承super關(guān)鍵字與this關(guān)鍵字(this作為補(bǔ)充的重要內(nèi)容)final關(guān)鍵字多態(tài)實(shí)例(instance)成員和類成員方法的重載類和對(duì)象語默制造基本概念對(duì)象Object類Class實(shí)例Instance接口Interface類型Type引用Reference包Package封裝Encapsulation繼承Inharitance多態(tài)Polymorphism面向?qū)ο笳Z默制造所謂面向?qū)ο蟮姆椒▽W(xué),就是使我們分析、設(shè)計(jì)和實(shí)現(xiàn)一個(gè)系統(tǒng)的方法盡
2、可能地接近我們認(rèn)識(shí)一個(gè)系統(tǒng)的方法。包括:面向?qū)ο蟮姆治觯∣OA,Object-OrientedAnalysis)面向?qū)ο蟮脑O(shè)計(jì)(OOD,Object-OrientedDesign)面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP,Object-OrientedProgram)面向?qū)ο蠹夹g(shù)主要圍繞以下幾個(gè)概念:對(duì)象、抽象數(shù)據(jù)類型、類、類型層次(子類)、繼承性、多態(tài)性。對(duì)象語默制造變量:指對(duì)象的所知道的狀態(tài)方法:指對(duì)象的功能單元。消息:軟件對(duì)象通過相互間傳遞消息來相互作用和通信。[一個(gè)對(duì)象調(diào)用另一對(duì)象的某個(gè)方法]一個(gè)消息由三部
3、分組成:1.接受消息的對(duì)象2.要完成方法的名字3.方法需要的參數(shù)對(duì)象B對(duì)象Amessage對(duì)象語默制造所有東西都是對(duì)象。可將對(duì)象想象成一種新型變量;它保存著數(shù)據(jù),但可要求它對(duì)自身進(jìn)行操作。java程序是一大堆對(duì)象的組合;通過消息傳遞,各對(duì)象知道自己該做些什么。每個(gè)對(duì)象都有自己的存儲(chǔ)空間,可容納其他對(duì)象。每個(gè)對(duì)象都有一種類型。同一類型所有對(duì)象都能接收相同的消息。類和對(duì)象語默制造對(duì)象(實(shí)例instance):實(shí)際個(gè)體創(chuàng)建某個(gè)類的具體對(duì)象(類似變量聲明)類(class):抽象的集合概念系統(tǒng)類庫中已定義好的類
4、用戶自定義的類屬性:狀態(tài),靜態(tài)特性的描述。方法:行為,動(dòng)態(tài)特性的描述。是一個(gè)軟件單元,它由一組結(jié)構(gòu)化的數(shù)據(jù)和在其上的一組操作構(gòu)成。Mary類Person將對(duì)象進(jìn)行抽象為類對(duì)類進(jìn)行實(shí)例化對(duì)象的引用語默制造0xbb22p20ageclassPerson{intage;}publicclassObjtoObj{publicstaticvoidmain(String[]args){Personp1=newPerson();Personp2=newPerson();p1.age=20;p2.age=30;Sys
5、tem.out.println("p1.age:"+p1.age+"p2.age:"+p2.age);p1=p2;System.out.println("p1.age:"+p1.age+"p2.age:"+p2.age);p1.age=25;System.out.println("p1.age:"+p1.age+"p2.age:"+p2.age);}}20,3030,3025,250xbb22p230age0xbb22p12030一個(gè)類的問題——類的命名語默制造一個(gè)類有幾個(gè)地方需要注意的:1,類名的修
6、飾符:publicabstract或者無修飾符,它們的區(qū)別是什么?2,類名:名稱問題。3:成員變量或者稱為屬性4:方法:5:特殊的方法:構(gòu)造器、屬性的訪問器和修改器包語默制造位置:程序的第一條語句存放:Sun建議Internet域名倒置編譯:使用javac–d.xxx.java生成與包名相同的目錄結(jié)構(gòu)當(dāng)前目錄源文件名位置:package語句[若有]和類定義之間默認(rèn):系統(tǒng)自動(dòng)引入java.lang包[importjava.lang.*]路徑:classpath:做為特殊的根目錄使用,從這里展開對(duì).cla
7、ss文件的搜索??赡軙?huì)增加編譯時(shí)間若不引入則使用全稱構(gòu)造語默制造構(gòu)造器:用來構(gòu)造新的對(duì)象的,新的對(duì)象里有類的屬性和方法。構(gòu)造器的特點(diǎn):1:構(gòu)造器必須與類名相同。2:每個(gè)類都必須有一個(gè)或者一個(gè)以上的構(gòu)造器。3:構(gòu)造器可以有參數(shù)也可以沒有參數(shù)。4:構(gòu)造器肯定沒有返回值。5:構(gòu)造器肯定是伴隨著new方法來操作的。6:構(gòu)造器生成的對(duì)象肯定是在堆中(可以不記)。修飾符:很多abstract,final,native,static,synchronized屬性和方法語默制造注意:類A中有這樣的屬性:publicA
8、a;這是什么?屬性:成員變量,類變量和局部變量,常量,類對(duì)象方法:成員方法,類方法Static關(guān)鍵字語默制造注意:類A中有這樣的屬性:publicAa;這是什么?屬性:成員變量,類變量和局部變量,常量,類對(duì)象(實(shí)例)方法:成員方法,類方法Static關(guān)鍵字語默制造加static修飾的成員是類成員[靜態(tài)成員],就是可以由一個(gè)類直接調(diào)用[Integer.parseInt()],為所有對(duì)象共有的。類方法只能操作類變量靜態(tài)類:通常一個(gè)普通類不允許聲明為靜態(tài)的,只