shenang博客技術(shù)文檔


          理論不懂就實(shí)踐,實(shí)踐不會就學(xué)理論!

          posts - 35,comments - 55,trackbacks - 0
           

                          Java核心技術(shù)8總結(jié)()

           

          1、依賴,聚合,繼承

          依賴:果一個類的方法操縱另一個類的對象,我們就說一個類依賴于另一個類。

          聚合:A的對象包含類B的對象。

          繼承:,如果類A擴(kuò)展類B,類A不但包含從類B繼承的方法,還會擁有一些額外的功能。

          2、日歷Calendar

          (1)創(chuàng)建

          GregorianCalendarcalendar=new regorianCalendar(2008,Calendar.DECEMBER,01);

          (2)set.get.add的用法

          3、關(guān)于static

          有時你希望定義一個類成員,使它的使用完全獨(dú)立于該類的任何對象。通常情況下,類成員必須通過它的類的對象訪問,但是可以創(chuàng)建這樣一個成員,它能夠被它自己使用,而不必引用特定的實(shí)例。在成員的聲明前面加上關(guān)鍵字static(靜態(tài)的)就能創(chuàng)建這樣的成員。

          總結(jié):

             變量:不要加static

             常量:加上static

             方法:一般不要加static,除非這個方法不允許對象操作。

          4Factory方法

          NumberFormat format=NumberFormat.getPercentInstance();

                        NumberFormat format2=NumberFormat.getCurrencyInstance();

                        int x=1;

                        System.out.println(format.format(x));

                        System.out.println(format2.format(x));

          結(jié)果:

          100%

          1.00

          5類設(shè)計技巧

          1)一定將數(shù)據(jù)設(shè)計為私有。

          最重要的是:絕對不要破壞封裝性。有時候,需要編寫一個訪問器方法或更改器方法,但是最好還是保持實(shí)例域的私有性。很多慘痛的經(jīng)驗(yàn)告訴我們,數(shù)據(jù)的表示形式很可能會改變,但它們的使用方式卻不會經(jīng)常發(fā)生變化。當(dāng)數(shù)據(jù)保持私有時,它們的表示形式的變化不會對類的使用者產(chǎn)生影響,即使出現(xiàn)bug也易于檢測。

          2)一定要對數(shù)據(jù)初始化。

          Java不對局部變量進(jìn)行初始化,但是會對對象的實(shí)例域進(jìn)行初始化。最好不要依賴于系統(tǒng)的默認(rèn)值,而是應(yīng)該顯式地初始化所有的數(shù)據(jù),具體的初始化方式可以是提供默認(rèn)值,也可以是在所有構(gòu)造器中設(shè)置默認(rèn)值。

          3)不要在類中使用過多的基本數(shù)據(jù)類型。

          就是說,用其他的類代替多個相關(guān)的基本數(shù)據(jù)類型的使用。這樣會使類更加易于理解且易于修改。例如,用一個稱為Address的新的類替換下面的Customer類中的實(shí)例域:

           

          這樣,可以很容易地順應(yīng)地址的變化,例如,需要增加對國際地址的處理。

          4)不是所有的域都需要獨(dú)立的域訪問器和域更改器。

          或許,需要獲得或設(shè)置雇員的薪金。而一旦構(gòu)造了雇員對象,就應(yīng)該禁止更改雇用日期,并且在對象中,常常包含一些不希望別人獲得或設(shè)置的實(shí)例域,例如,在Address類中,存放州縮寫的數(shù)組。

          5)使用標(biāo)準(zhǔn)格式進(jìn)行類的定義。

          一定采用下面的順序書寫類的內(nèi)容:

          公有訪問特性部分

          包作用域訪問特性部分

          私有訪問特性部分

          在每一部分中,應(yīng)該按照下列順序列出:

          實(shí)例方法

          靜態(tài)方法

          實(shí)例域

          靜態(tài)域

          畢竟,類的使用者對公有接口要比對私有的實(shí)現(xiàn)細(xì)節(jié)更感興趣,并且對方法要比對數(shù)據(jù)更感興趣。

          但是,哪一種風(fēng)格更好并沒有達(dá)成共識。Sun的程序設(shè)計風(fēng)格建議 Java程序設(shè)計語言先書寫域,后書寫方法。無論采用哪種風(fēng)格,重要的一點(diǎn)是要保持一致。

          6)將職責(zé)過多的類進(jìn)行分解。

          這樣說似乎有點(diǎn)含糊不清,究竟多少算是過多?每個人的看法不同。但是,如果明顯地可以將一個復(fù)雜的類分解成兩個更為簡單的類,就應(yīng)該將其分解(但另一方面,也不要走極端。設(shè)計10個類,每個類只有一個方法,顯然也太小了)。

          7)類名和方法名要能夠體現(xiàn)它們的職責(zé)。

          與變量應(yīng)該有一個能夠反映其含義的名字一樣,類也應(yīng)該如此(在標(biāo)準(zhǔn)類庫中,也存在著一些含義不明確的例子,如:Date類實(shí)際上是一個用于描述時間的類)。

          命名類名的良好習(xí)慣是采用一個名詞(Order)、前面有形容詞修飾的名詞(RushOrder)或動名詞(有“-ing”后綴)修飾名詞(例如,BillingAddress)。對于方法來說,習(xí)慣是訪問器方法用小寫get開頭(getSalary),更改器方法用小寫的set開頭(setSalary)。

          posted on 2009-04-13 14:40 重慶理工小子 閱讀(289) 評論(0)  編輯  收藏 所屬分類: JAVA基礎(chǔ)
          主站蜘蛛池模板: 衡阳县| 温宿县| 台安县| 铁岭市| 漳州市| 汶川县| 潞城市| 清苑县| 武川县| 卓尼县| 平邑县| 万年县| 汪清县| 禄丰县| 恩施市| 玛纳斯县| 西安市| 滁州市| 新兴县| 治县。| 白河县| 山西省| 通许县| 延安市| 疏勒县| 深泽县| 淮安市| 灌南县| 项城市| 合江县| 华坪县| 略阳县| 开阳县| 肇庆市| 衡阳县| 洮南市| 金坛市| 涿鹿县| 香格里拉县| 南川市| 诸暨市|