

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、面向?qū)ο蟮能浖_發(fā)基礎,面向?qū)ο蟮幕靖拍?程序 = 對象 + 消息面向?qū)ο?對象 + 類 + 繼承 + 通信,公式化描述,面向?qū)ο筌浖_發(fā)的基本過程,面向?qū)ο蟮能浖_發(fā)過程 需求分析—需求模塊化—概要設計—詳細設計—實現(xiàn)面向?qū)ο蟮姆治鲭A段 需求分析—需求模型化面向?qū)ο蟮脑O計階段 概要設計—詳細設計實現(xiàn)階段編碼階段—實現(xiàn)階段。,面向?qū)ο蟪绦蛟O計方法的特點:,抽象封裝繼承多態(tài),類的定義,[修飾符
2、] class 類名 [extends 父類名] [ implements 接口名]{ 類成員變量聲明; 類方法聲明;},父類名,關鍵字:extends子類可以繼承父類的所有屬性和方法。接口:接口名跟在implements關鍵字后面,用來說明當前類中實現(xiàn)了哪個接口定義的功能和方法。接口是Java語言用來實現(xiàn)多重繼承的一種特殊機制。,修飾符,類的修飾符有:
3、訪問控制符;不止一個控制符。抽象類說明符abstract最終類說明符final,聲明類體,類的屬性[修飾符] 變量類型 變量名[=變量初值];[修飾符] 類名 對象名[= new 類名(實參)]類的方法[修飾符] 返回值類型 方法名(參數(shù)列表)throws 例外名1,例外名2{方法體;局部變量聲明;語句序列;},創(chuàng)建對象實例,New類名 對象名=new 類的構造方法,構造函數(shù),構造函數(shù)的方法名與類名相同。
4、構造函數(shù)沒有返回類型。構造函數(shù)的主要作用是完成對類對象的初始化工作。構造函數(shù)不能由編程人員顯示地直接調(diào)用。在創(chuàng)建一個類的新對象的同時,系統(tǒng)會自動調(diào)用該類的構造函數(shù)為新對象初始化。,訪問控制修飾符,Public公共類,表明它可以被所有的其它類所引用,即這個類作為整體是可見和可使用的,程序的其它部分可以創(chuàng)建這個類的對象、訪問這個類內(nèi)部可見的域和調(diào)用它的可見的方法。 Private用private修飾的域或方法只能被該類自身所訪問
5、和調(diào)用,而不能被任何其它類,包括該類的子類訪問和調(diào)用。private修飾符用來聲明那些類的私有成員,它提供了最高的保護級別。簡單地說就是,具有private(私有)訪問控制修飾符的類成員不能被其它的類訪問和調(diào)用。,訪問控制修飾符,Protected用protected修飾的類成員可以被三種類所使用(訪問、調(diào)用): 類自身 與它在同一個包中的其它類 在其它包中的該類的子類 具有protected(保護)訪問控制修飾符的類成員只能
6、被同一個包中的類,以及其它包中該類的子類訪問和調(diào)用 .,private protected(私有保護),用private protected修飾的類成員可以被兩種類使用 :一種是該類本身 一種是該類的所有子類 論這些子類是與該類在同一個包里,還是處于其它的包中 與protected的區(qū)別:用來控制類之間繼承關系的訪問權限,缺省訪問控制符,說明該類只能被同一個包中的類訪問和引用,而不可以被其他包中的類使用,這種訪問特征又稱包訪問
7、性。如: class A{ 類體;},訪問控制權限控制小結,靜態(tài)屬性、靜態(tài)方法和靜態(tài)初始化器,靜態(tài)屬性 static靜態(tài)域在類定義中已被系統(tǒng)唯一地創(chuàng)建(分配存儲單元),因此使用類名聲明.Class A{int a;Static int b;Int add(int x,int y){int c; c=x+y; return c;}},靜態(tài)域最本質(zhì)的特點是:它們是類的屬性,而不屬于任何一個類的具體對象
8、。換句話說,對于該類的任何一個具體對象而言,靜態(tài)域是一個公共的存儲區(qū)域,任何一個類的對象訪問它時,取到的都是相同的值,同樣,任何一個類的對象去修改它時,也都是在對同一個存儲區(qū)域操作。a,b ;,靜態(tài)方法,static修飾符修飾的域是屬于類的公共域;與之相仿,用static修飾符修飾的方法,是屬于整個類的類方法;而不用static修飾符限定的方法,是屬于某個具體類對象或?qū)嵗姆椒?。聲明一個方法為static至少有三重含義: (1)調(diào)用
9、這個方法時,應該使用類名做前綴,而不是某一個具體的對象名;(2)非static的方法是屬于某個對象的方法,在這個對象創(chuàng)建時對象的方法在內(nèi)存中擁有自己專用的代碼段;而static的方法是屬于整個類的,它在內(nèi)存中的代碼段將隨著類的定義而分配和裝載,不被任何一個對象專有;,靜態(tài)方法,(3)由于static方法是屬于整個類的,所以它不能操縱和處理屬于某個對象的域,而只能處理屬于整個類的域。也即,static方法只能處理static的數(shù)據(jù)???/p>
10、書上例子:,class A{ int x; static int y = 3; void showx( ) { System.out.println("x = " + x); } static void show( ) { System.out.print("static : "); } static void showy( ) { System.out.println
11、("y = " + y); } static void show1( ) { A.show( ); A.showy( ); }}class StaticTest{ static public void main(String arg[ ]) { A.y += 1; A.show1(); A a1 = new A( ); a1.showx( );
12、A.showy( ); a1.showy( ); A a2 = new A(); a2.x = 6; a2.y = 7; a2.showx( ); a2.show1( ); a1.show1( ); A.show1( ); }},靜態(tài)初始化器,靜態(tài)初始化器是由關鍵字static引導的一對大括號括起來的語句組。它的任務是對靜態(tài)成員變量進行初
13、始化。與構造函數(shù)的區(qū)別:,class Employee{ private int m_EmpNo; String m_EmpName; char m_EmpGender; private double m_EmpSalary; static double m_MinSalary; static int m_NextEmpNo;}static {
14、 //靜態(tài)初始化器 m_MinSalary=250; m_NextEmpNo=3001;}Employee(String name,char sex,double sal) //構造函數(shù){……},例子:p105,,抽象類與抽象方法,抽象類在類定義頭使用abstract修飾,聲明不為其分配存儲單元,即不能創(chuàng)建抽象類的實例。 抽象方法抽象方法指的是只有方法頭,沒有方法
15、體的方法,用abstract來修飾。,需要特別注意的是,所有的抽象方法,都必須存在于抽象類之中。抽象類中定義的是一組它所有子類所共有的公共域和方法,抽象方法就是其中的公共方法,它是所有子類都要使用的同類操作,定義abstract方法的主要目的也就在于此。事實上,為abstract方法書寫方法體是沒有意義的,因為abstract方法所依附的abstract類沒有自己的對象,只有它的子類才存在具體的對象,而它的不同子類對這個abstract
16、方法有互不相同的實現(xiàn)方法,除了參數(shù)列表和返回值之外,抽取不出其他的公共點。所以就只能把abstract方法作為一個共同的接口,表明當前抽象類的所有子類,都使用這個接口來完成某種功能。,要注意區(qū)別抽象方法和空方法,如:abstract methodA();定義的是抽象方法,而methodB(){}定義的是空方法。 抽象方法頭最后有分號??辗椒ㄓ蟹椒w括號,方法頭最后沒有分號。,最終類、最終屬性、最終方法和終結器,在類定義頭使
17、用final修飾,聲明該類不能被繼承。如果一個類被final修飾符所修飾和限定,說明這個類不可能有子類。如果把一個應用中有繼承關系的類組織成一棵倒長的樹,所有類的父類是樹根,每一個子類是一個分支,那么聲明為fmal的類就只能是這棵樹上的葉結點,,最終類、最終屬性、最終方法和終結器,用final修飾符說明常量時,需要注意以下幾點:(1)需要說明常量的數(shù)據(jù)類型;(2)需要同時指出常量的具體取值;(3)因為所有類對象的常量成員,其數(shù)值
18、都固定一致,為static。為了節(jié)省空間,常量通常被聲明為static。使用常量好處是使程序更加清晰易讀,維護起來也更方便。,最終類、最終屬性、最終方法和終結器,最終方法使用final修飾符,一經(jīng)定義后不能再修改,即不能被子類覆蓋。類似于構造函數(shù),終結器方法不由編程人員顯式調(diào)用執(zhí)行,而是在特定的時刻一一對象被回收時刻由系統(tǒng)自動執(zhí)行的。,其它修飾符及修飾符的混合使用,(1)abstract不能與final并列修飾同一個類;(2)ab
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 面向?qū)ο蟮膶崟r軟件開發(fā)方法研究.pdf
- 面向?qū)ο筌浖_發(fā)方法的實例分析.pdf
- 面向?qū)ο蠼Y構有限元軟件開發(fā).pdf
- 基于面向?qū)ο蟮男瑯I(yè)ERP軟件開發(fā)研究.pdf
- 基于PMP的面向?qū)ο筌浖_發(fā)技術的研究.pdf
- 基于面向?qū)ο罂蚣艿腁TS軟件開發(fā)方法研究.pdf
- 面向?qū)ο筌浖_發(fā)之模式的研究和應用.pdf
- 面向?qū)ο蠓椒ㄔ谖锢韺嶒炣浖_發(fā)中的應用.pdf
- 間接式干燥裝備建模及面向?qū)ο筌浖_發(fā).pdf
- 基于面向?qū)ο筌浖_發(fā)方法的數(shù)據(jù)庫接口設計.pdf
- 面向圖形對象技術在橋梁繪圖軟件開發(fā)中的應用.pdf
- 面向?qū)ο蟮能浖_發(fā)實訓平臺的研究與實現(xiàn).pdf
- 有限元軟件開發(fā)中的面向?qū)ο蠹夹g研究.pdf
- 軟件開發(fā)技術基礎
- 面向?qū)ο筌浖_發(fā)技術在PLM產(chǎn)品開發(fā)中的應用研究.pdf
- 面向?qū)ο蟮墓軒街欣淦鲄?shù)化設計軟件開發(fā).pdf
- 面向?qū)ο蠼<夹g在軟件開發(fā)中的應用研究.pdf
- --面向?qū)ο筌浖こ袒A
- 面向?qū)ο蟮能浖_發(fā)方法在網(wǎng)絡視頻監(jiān)控系統(tǒng)中的應用.pdf
- 為什么面向?qū)ο蟮木幊虝谲浖_發(fā)領域造成如此震憾的影響?
評論
0/150
提交評論