999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java匿名類的分析和理解

2011-12-31 00:00:00火善棟楊旭東
計算機時代 2011年8期

摘要:針對一些Java學習者對匿名類經常產生模糊認識,通過三個具體的實例詳細地分析了Java匿名類的內在本質。分析結果表明,匿名類實際上可以看作是一個類的子類或者是一個接口的實現類,這樣可使匿名類更易于理解。

關鍵詞:Java;匿名類;子類;接口

中圖分類號:N43

文獻標志碼:A

文章編號:1006-8228(2011)08-42-02

引言

什么是匿名類,很多教材和參考書把它解釋為:匿名類是一個內部類,是一個沒有類名的類。匿名類的優點是它可以使代碼結合的更加緊湊,使代碼更加易于理解。

其實,上述解釋并沒有說明匿名類的實質,這是對匿名類的一種很膚淺的認識和理解。因此,很多JAVA的學習者尤其是初學者在接觸到匿名類時常常是一頭霧水,不知道匿名類到底是一個什么東西,以及在實際編程中如何去運用匿名類。學習過Java的人都知道,在Java GUI程序設計中會大量地運用到匿名類。很多學習者在編寫這類程序時常常是模仿一些現成的實例,但并沒有搞清楚為什么這樣用;有很多程序由于大量運用匿名類,使得代碼變得難以理解,這其中一個很根本的原因就是沒有搞清楚匿名類的實質。

本文的理解是:匿名類是一個內部類,匿名類實質也是一個類(普通類或抽象類)的子類或者是—個接口的實現類。

下面就通過三個具體的實例來分析匿名類的實質。

1、匿名類與普通類子類的分析和比較

表1中的代碼定義了兩個內部類:TestClass和Son,其中Son TestClass的子類,它覆蓋了TestClass中的cry方法。另外,在test方法中創建了兩個實例,一個是Son的一個實例aa,另一個是TestClass的一個匿名類的一個實例bb,該匿名類的方法與Son中的方法相同,最后用這兩個不同的實例分別調用相應的cry方法。其運行結果都為“this general class'son iscrying”。這個實例說明:定義一個匿名類與定義一個一般類的一個子類,其內在含義和調用方法方式完全相同。

2、匿名類與抽象類子類的分析和比較

表2中的代碼定義了兩個內部類TestAbstract和Son,其中Son是TestClass的子類,TestAbstract是一個抽象類,Son覆蓋了TestAbstract中的cry抽象方法。另外,在test方法中創建了兩個實例,一個是Son的一個實例aa,另一個是TestAbstract的一個匿名類的一個實例bb,該匿名類的方法與Son中的方法相同,最后用這個不同的實例分別調用相應的cry方法。其運行結果都為“this general abstract class'son is crying”。這個實例說明:定義一個抽象匿名類與定義一個抽象類的子類(當然,這個子類不能再是一個抽象類)其內在含義和調用方法方式完全相同。

3、匿名類與接口實現類的分析和EE較

表3中的代碼定義了—個內部接口TestInterface和實現這個內部接口的一個內部類Son,Son實現了接口Tesffnterfaee中的兩抽象方法cry和sleep。另外,在test方法中創建了兩個實例,一個是Son的一個實例aa,另一個是TestInterface的一個匿名類的一個實例bb,該匿名類的方法與Son中的方法相同,最后用這個不同的實例分別調用相應的cry方法。其運行結果都為“this interface'son is crying”。這個實例說明:定義一個接口匿名類與定義一個接口的實現類(當然這個實現類不能是一個抽象類)其內在含義和調用方法方式完全相同。

4、結束語

匿名類可以理解為一個類(普通類或抽象類)的子類或者是一個接口的一個實現類。當這個匿名類是一個普通類的子類時,這個類中的方法必須要覆蓋類中的某些方法,否則沒有任何意義;當這個匿名類是一個抽象類的子類時,這個類中的方法必須要實現類中所有的抽象方法,當然也可以覆蓋某些方法;當這個匿名類是一個接口的一個實現類時,這個類中的方法必須要實現這個接口中所有的抽象方法。總之,匿名類的定義原則和調用方式與類的子類以及接口實現類(這些子類或實現類不能是抽象類)的定義原則和調用方式完全相同。所不同的主要有兩點:其一,若匿名類中定義的方法在父類或接口中沒有定義或聲明時,則這個方法無法調用,也就是說這個方法沒有任何意義,但是在子類或實現類中卻不存在這種情況;其二,匿名類的實例化是通過其父類或所實現的接口(如new<父類名或接口名>()來實現來,匿名類沒有類名,所以也沒有構造方法。

參考文獻:

[1]李芝興等.Java序設計之網絡編程.清華大學出版社,2009.

[2]王森.Java深度歷險,華中科技大學出版社,2002.

[3]王克宏.Java技術教程(基礎篇),清華大學出版社,2002.

[4]孫燕.Java2入門與實例教程,中國鐵造出版社,2003.

[5]柯溫釗.Java例解教程,中國鐵道出版社,2001.

主站蜘蛛池模板: 操操操综合网| 亚洲最新在线| 欧美成人国产| 一级毛片在线免费视频| 亚洲欧美不卡| 米奇精品一区二区三区| 日韩欧美在线观看| 8090成人午夜精品| 国产成人精品一区二区| 日本免费a视频| 茄子视频毛片免费观看| 久996视频精品免费观看| 蜜臀av性久久久久蜜臀aⅴ麻豆| 久久一本精品久久久ー99| 色悠久久综合| 成人免费视频一区二区三区| 国产成人一区在线播放| 国产精品午夜福利麻豆| 亚洲91在线精品| 亚洲国产成人久久精品软件| 亚洲自拍另类| 国产小视频免费| 乱人伦视频中文字幕在线| 欧美精品aⅴ在线视频| 乱人伦中文视频在线观看免费| 99在线观看免费视频| 伊伊人成亚洲综合人网7777| 最新日本中文字幕| 手机成人午夜在线视频| 欧美日韩成人| 久久综合五月| 中文字幕久久亚洲一区| 最近最新中文字幕在线第一页 | 最近最新中文字幕免费的一页| 日韩天堂在线观看| 久久国产精品夜色| 国产精品爆乳99久久| 波多野结衣中文字幕久久| 无码人中文字幕| 国产激爽爽爽大片在线观看| 亚洲品质国产精品无码| 91精品专区国产盗摄| 99青青青精品视频在线| 国产一二三区视频| 精品国产自在现线看久久| 亚洲欧洲自拍拍偷午夜色无码| 黄色污网站在线观看| 911亚洲精品| 一区二区欧美日韩高清免费| 99精品这里只有精品高清视频| 97se亚洲综合在线韩国专区福利| 狠狠色综合网| 欧美亚洲激情| 欧美成人午夜视频免看| 亚洲无码高清一区| 久久综合国产乱子免费| 亚洲,国产,日韩,综合一区 | 欧美国产另类| 99视频在线免费| 麻豆a级片| 欧美日韩北条麻妃一区二区| 国产精品亚洲αv天堂无码| 欧美无遮挡国产欧美另类| 理论片一区| 都市激情亚洲综合久久| 亚洲精品无码av中文字幕| 99久久性生片| 全部免费毛片免费播放| 国产小视频在线高清播放| 久久99国产精品成人欧美| 91精品国产自产91精品资源| 国产噜噜噜| 狠狠色丁香婷婷| 高清无码一本到东京热| 一级毛片不卡片免费观看| www.亚洲一区| 成色7777精品在线| 欧洲成人免费视频| 在线观看国产精品第一区免费 | 精品国产aⅴ一区二区三区| 天天色综合4| AV老司机AV天堂|