五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

圖像和聲音文件(5)

2022-02-04 00:01 作者:喬知洛  | 我要投稿

4.除非所有繼承的方法都有意義,否則不要使用繼承。

Calendar類的實例表示,因此可以使用繼承。

class Holiday extends GregorianCalendar (...)

add,這個方法可以將假日轉(zhuǎn)換成非假日:

Holiday christmas;

christmas.add(Calendar.DAY_OF _MONTH,12);

因此,繼承對于這個例子來說并不太適宜。

周能,能不說真能e就不會出現(xiàn)這個問題。由于這個Loeaoate類是不可是所以沒有任何方法能夠把假日變成非假日。

5.在覆蓋方法時,不要改變預(yù)期的行為。

答換原用不僅應(yīng)用于消法,更重要的是,它也適用于行為。在覆蓋一個方法的時候,應(yīng)該毫無緣由楚改變它的行為。就這一點而言,編譯器不會提供任何幫助,即編譯器不會查重新定義的方法是否有意義。例如,可以重新定義toliday類中的add方法來“修正”這個方法的問題,可能什么也不做,或者拋出一個異常,或者是前進(jìn)到下一個假日。然而,這樣一個“修正”違反了替換原則。對于以下語句序列

int dl = x.get(Calendar.DAY_OF _MONTH);

x.add(Calendar.DAY OF MONTH, 1);

int d2 = x.get(Calendar.DAY_OF MONTH);

System.out.println(d2-d1);

不管×的類型是GregorianCalendar還是Holiday,執(zhí)行上述語句后都應(yīng)該得到預(yù)期行為。當(dāng)然,這是個難題。理智和不理智的人們可能就預(yù)期行為是什么爭論不休。例如,有些人爭論說,替換原則要求Manager.equals忽略bonus字段,因為Employee.equals就忽略了這個字。實際上,憑空討論這些問題毫無意義。歸根結(jié)底,關(guān)鍵在于在子類中覆蓋方法時,不要離最初的設(shè)計想法。

6.使用多態(tài),而不要使用類型信息。

只要看到類似下面的代碼

if (x is of type 1)

action1(x);


圖像和聲音文件(5)的評論 (共 條)

分享到微博請遵守國家法律
古蔺县| 英吉沙县| 乌拉特中旗| 新沂市| 抚松县| 金堂县| 崇礼县| 陆川县| 油尖旺区| 镶黄旗| 延津县| 临高县| 两当县| 西青区| 沈阳市| 武陟县| 华容县| 华蓥市| 丽江市| 双柏县| 麟游县| 阿瓦提县| 西贡区| 子长县| 南木林县| 理塘县| 和平县| 新丰县| 兴业县| 建德市| 嵊州市| 大洼县| 无极县| 南木林县| 玉门市| 蒲江县| 普格县| 德安县| 清水河县| 武川县| 丹棱县|