4-1、Java類.ppt_第1頁
4-1、Java類.ppt_第2頁
4-1、Java類.ppt_第3頁
4-1、Java類.ppt_第4頁
4-1、Java類.ppt_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、類4,類4.1 Java技術(shù)類4.2類繼承4.3介面4.4包,類封裝構(gòu)成Java程序的基本元素、一系列變量(數(shù)據(jù)成員,也稱為“域”)和方法(成員方法method)。創(chuàng)建新類是創(chuàng)建新的數(shù)據(jù)類型。實例化類將生成對象。因此,對象是變量和相關(guān)方法的集合。其中,變量表示對象的狀態(tài)、屬性和方法。4.1 Java技術(shù)類4 . 1 . 1 . 1類定義,1,Java類的基本語法:* class * * *例如,public class my first class private int age;public void setage(intvalue)age=value;第二,聲明屬性屬性的基本語法:*=;示

2、例:public class my first class private int x;Private float y=10000.0FPrivate String name= NIIT,第三,宣言方法的基本語法:* (*) *如public class Dog private int weight;public intget weight()return weight;公共語音設(shè)置(intnew weight)if(new weight 0)weight=new weight;4.1.2類對象創(chuàng)建稱為類實例化的類變量,類變量也稱為類對象、類實例等(類分類變量、實例變量和類變量以及類實例)。類

3、中的對象在節(jié)目執(zhí)行過程中創(chuàng)建,并占用在節(jié)目執(zhí)行過程中動態(tài)分配的空間。類對象完成任務(wù)并節(jié)省資源,Java中的垃圾收集程序會自動回收對象占用的空間。也就是說,類對象具有自己的生命周期。首先,創(chuàng)建對象創(chuàng)建類的對象需要new運算符。常見的格式是對象名=new類名(),或者對象名=new類名(參數(shù)表)。例如:rec t1=new Rect();為指定類在內(nèi)存中分配空間,并為對象變量提供空間引用。您也可以將New運算子與類別宣告搭配使用,以建立類別的物件。例如:Rect Rect 1=new Rect();2,訪問對象成員使用點編號訪問對象成員(包括屬性和方法)。例如:d . set weight(42)

4、;D.weight=42/only permissible if weight is public,4.1.3建構(gòu)函式Java需要先設(shè)定初始值,然后才能使用所有變數(shù)。Java提供了將初始值分配給類的成員變量的特殊功能。配置方法(類成員變量可以在定義時直接賦值,如果未指定,則有默認(rèn)值0牙齒,但是為了表示封裝性,類的內(nèi)部詳細(xì)信息是安全的,建議不要隨意修改。)。)配置方法是特殊的成員方法,如果(1)配置方法名稱與類相同,則反映其特殊性。(2)配置方法沒有返回值或返回類型。(3)每個類可以有零個或多個配置方法,可以重新加載。(4)配置方法在創(chuàng)建對象時自動運行,通常不能顯式直接調(diào)用。附注:1,方法格式參

5、數(shù)名稱與成員變數(shù)名稱相同時,使用時會造成混淆。在Java語言中,可以使用this關(guān)鍵字表示牙齒對象。2.通過調(diào)用實際參數(shù)表(this)語句,可以重新加載配置方法,以便一個配置方法可以調(diào)用另一個配置方法。牙齒語句根據(jù)參數(shù)表調(diào)用相應(yīng)的配置方法。但是,在牙齒點,this調(diào)用構(gòu)造函數(shù)代碼必須是方法的第一行。3、無參數(shù)施工方法稱為無參施工方法。如果類沒有自定義配置方法,則在創(chuàng)建對象時,Java會自動提供空的、無參數(shù)的配置方法,該方法用于將數(shù)據(jù)類型的默認(rèn)值分配給類對象的成員變量。用戶定義自己的構(gòu)造方法后,Java不再提供自動生成的無條件構(gòu)造方法。施工方法重載示例。Class RectOverload do

6、uble lengthDouble widthdouble area()return length * width;Rect overload (double l,double w)length=l;width=w;Rect overload (doubles),class Rect demo 4 public static void main(string args)Rect overload Rect 1=new Rect overload()雙應(yīng)收帳款;ar=rec t1 . area();System.out.println(矩形的面積為ar);ar=rect 2 . area();S

7、ystem.out.println(正方形面積為ar);節(jié)目運行結(jié)果如下:矩形面積為200.0正方形面積為36.0,this(1,2)。長度=s;寬度=s;this(1,2);長度=s;寬度=s;4.1.4類和成員修飾符定義類和類的成員時,可以使用某些修飾符限制類和成員的使用。修改器通常分為兩類茄子:訪問控制器和訪問控制器。訪問控制器包括public、protected和private。牙齒符號的作用是授予對對象的訪問權(quán)限,該對象隱藏有關(guān)類和類成員的信息。鄭智薰訪問控制符號有多種作用,如static、final、native、volatile和abstract。有些修改器只能應(yīng)用于類成員,有些

8、修改器可以應(yīng)用于類和類成員。1,存取者:(1)public:對于成員:無論在同一包中還是在其他包中,所有其他類都可以訪問。類也是如此。(2)private:對于成員:只能從成員所屬的類別存取。對于類,不能將類聲明為private。(3)protected:對于成員:可以訪問同一包中的類(包訪問權(quán)限)。您還可以訪問派生的子類。即使不在同一個包中,主要區(qū)別在于可以訪問多個子類。對于類,不能將類聲明為protected。說明:(1),每個編譯單元(類檔案)只能有一個public class。(2),public class的名稱(包括大小寫入)必須與類文件同名。(3),類檔案(* .java)中可能

9、沒有public class。(4),class不能顯式顯示為private和protected。(5),如果不希望類生成任何對象,可以將該類的所有配置函數(shù)設(shè)置為private。但是,您仍然可以創(chuàng)建該類的對象。也就是說,class的static成員(屬性和方法)可以。類的屬性修飾符。1,public class XXXX public表示牙齒類對所有其他類可見。2,final calss XXXXfinal表示牙齒類不能從任何類繼承(終端匹配手,String是典型的final類)。3,abstract class XXXXabstract表示牙齒類是抽象類。4.不將任何內(nèi)容寫入class XX

10、XX。換句話說,牙齒類只對其所在包(子包除外)中的類可見。2,訪問控制1,static修飾符使用static修飾符將類的成員變量和方法成員修飾為靜態(tài)成員(也稱為類成員)。靜態(tài)成員存儲在類的存儲庫中,屬于整個類,而不是特定的類對象。靜態(tài)成員屬于整個類,因此由所有類對象共享。徐璐從其他類對象訪問靜態(tài)成員。存取相同的物件。使用靜態(tài)成員需要注意的是:(1)加載類時,static塊代碼只運行一次。(2)靜態(tài)方法不能訪問屬于對象的成員變量,只能處理屬于整個類的成員變量。換句話說,靜態(tài)方法只能處理靜態(tài)成員變量。(3)可以通過兩種茄子方法調(diào)用靜態(tài)成員。都是一樣的。變量:類名。變量,類對象。變量。方法:類名。方

11、法名稱(),類對象。方法名稱()。節(jié)目運行結(jié)果如下:a=42 b=99,使用靜態(tài)成員。Class StaticDemo int a=42Static int b=99static void call me()system . out . print ln(a=a);classtatic by name public static void main(string args)static demo . call me();system . out . print ln(b=static demo . b);static、/error和非靜態(tài)字段不可用。2,final修飾符final表達(dá)式可以應(yīng)用

12、于類、方法和變量。最終的意義是最終的或最終的。不能繼承Final類。換句話說,final類沒有子類。不能復(fù)蓋Final方法。換句話說,子類中方法的名稱不能與父類中final方法的名稱相同。Final變量實際上是Java語言中的符號常量,可以在定義時指定初始值,也可以在定義后將初始值指定給其他地方,但不能重新指定值。通常使用大寫標(biāo)識符表示final變量。示例:final double PI=3.1416Final double G=9.18Final變量不能更改,因此不必存儲在每個對象中。通常,靜態(tài)聲明final變量以節(jié)省存儲空間。示例:static final double PI=3.1416

13、,3,abstract修飾符abstract修飾符可以應(yīng)用于稱為抽象類和抽象方法的類和方法。抽象類需要繼承,抽象方法必須在子類中實現(xiàn)才能有意義。4,native修飾符native修飾符通常用于聲明用其他語言(如C、C、FORTRAN、程序集等)編寫方法主體和具體實現(xiàn)方法功能的特殊方法。這是因為Native方法的方法主體是用其他語言編寫的。因此,所有native方法都沒有方法體。Native方法適用于實時性能、執(zhí)行效率和執(zhí)行速度高的情況。5、synchronized修改器synchronized修改器可以應(yīng)用于方法或塊,互斥鎖處理多線程程序中共享使用的方法和塊,以便隨時只能在一個線程中運行或操作

14、synchronized方法或塊。枚舉類型和4.1.5枚舉類型enum類型字段由一組固定常量組成。您可以使用Enum關(guān)鍵字定義enum類型。例如,每周每天指定enum類型。public enum day Sunday、Monday、Tuesday、Wednesday、Thursday、Friday和Saturday enum類的主體可以包含方法和,在創(chuàng)建編譯器enum時會自動添加一些茄子特殊方法。所有enum在java.lang.Enum中顯示擴(kuò)展。enum不能擴(kuò)展到其他內(nèi)容,因為Java不支持多重繼承。pacekage cards.testsimport cards . domain . p

15、laying card;import cards . domain . suit;public class test playing card public static void main(string args)playing card卡1=new playing card(suit . spades);system . out . print ln(car D1 is the card 1 . get rank()of car D1 . get suit name();package card.domainPublic enum suit spades、hearts、clubs、diam

16、onds、package cards.domainPublic class playingcard專用套件;專用int rankPublic playingcard (suit suit,intrank)this . suit=suit;This.rank=rankpublic Suit getSuit()return Suit;public string getsuitname()string name=;switch(suit)case spades 3360 name=spades;布列克;Case HEARTS: name=Hearts布列克;Case CLUBS: name=Clubs布列克;Case DIMAONDS: name=Dimaonds布列克;Default: return name,使用4.1.6類1,要減少個人成員訪問類之間的聯(lián)接器,可以為類成員指定private修改器,以指示只能在該類中訪問。如果其他類需要訪問個人成員,則只能通過取水和取水方法訪問。這些方法通常命名為getXxx()和setXxx(),依此類推。訪問個人會員。class rectangle RC Private double length:Pri

溫馨提示

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

評論

0/150

提交評論