第八周 控制反轉(zhuǎn)與MVC模式
但是我們打算借助GUI(圖形化用戶(hù)界面)來(lái)介紹兩個(gè)設(shè)計(jì)思想:控制反轉(zhuǎn)和MVC設(shè)計(jì)模式。
部件是創(chuàng)建GUI的獨(dú)立部分,比如像按鈕、菜單、菜單項(xiàng)、選擇框、滑動(dòng)條、文本框等。
Java類(lèi)庫(kù)中有不少現(xiàn)成的部件。
控制反轉(zhuǎn)與Swing的消息機(jī)制
監(jiān)聽(tīng)器 -- 接口 -- 接口函數(shù) -- 實(shí)現(xiàn)接口的類(lèi)的對(duì)象 -- 運(yùn)行時(shí)動(dòng)態(tài)對(duì)象 注冊(cè)事件對(duì)象,調(diào)用接口函數(shù) -- 接口統(tǒng)一,實(shí)現(xiàn)各異 --- 方法體寄存于實(shí)現(xiàn)該接口的類(lèi)的接口函數(shù)方法體
- 有控件公布一個(gè)監(jiān)聽(tīng)者接口和一對(duì)注冊(cè)/注銷(xiāo)函數(shù)
- 你的代碼實(shí)現(xiàn)那個(gè)監(jiān)聽(tīng)者接口,并將監(jiān)聽(tīng)者對(duì)象注冊(cè)到控件上
- 一旦控件被點(diǎn)擊,就會(huì)反過(guò)來(lái)調(diào)用你所創(chuàng)建的監(jiān)聽(tīng)者對(duì)象實(shí)現(xiàn)的接口函數(shù)。---通過(guò)接口實(shí)現(xiàn)在一個(gè)類(lèi)A里面執(zhí)行另一個(gè)類(lèi)B里面的函數(shù)且該函數(shù)一般會(huì)用到這個(gè)類(lèi)B的數(shù)據(jù)。從而實(shí)現(xiàn)了一次類(lèi)之間的數(shù)據(jù)通信,且不需要把類(lèi)B的對(duì)象引用(類(lèi)的代碼中用this指代)傳遞給A就能使用到B中的所有數(shù)據(jù)、成員。
內(nèi)部類(lèi)
內(nèi)部類(lèi)就是指一個(gè)類(lèi)定義在另一個(gè)類(lèi)的內(nèi)部,從而成為外部類(lèi)的一個(gè)成員。
因此一個(gè)類(lèi)中可以有成員變量、方法,還可以有內(nèi)部類(lèi)。
實(shí)際上Java的內(nèi)部類(lèi)可以被稱(chēng)為成員類(lèi),內(nèi)部類(lèi)實(shí)際上是它所在類(lèi)的成員。
所以?xún)?nèi)部類(lèi)也就具有和成員變量、成員方法相同的性質(zhì)。
比如,成員方法可以訪(fǎng)問(wèn)私有變量,那么成員類(lèi)也可以訪(fǎng)問(wèn)私有變量了。
也就是說(shuō),成員類(lèi)中的成員方法都可以訪(fǎng)問(wèn)成員類(lèi)所在類(lèi)的私有變量。
內(nèi)部類(lèi)最重要的特點(diǎn)就是能夠訪(fǎng)問(wèn)外部類(lèi)的所有成員。
MVC設(shè)計(jì)模式

其中, 示例代碼

運(yùn)行結(jié)果:

完整的代碼示例見(jiàn):
https://github.com/menglanyingfei/MOOC_Wengkai_Java/tree/master/code/kechengbiao
寫(xiě)在最后:
- 寫(xiě)這篇博客時(shí)聽(tīng)的歌曲
http://music.163.com/#/song?id=400579141 - 寫(xiě)作時(shí)間
2017/07/19
23:48:00 - 博客鏈接
http://blog.csdn.net/menglanyingfei?viewmode=contents - 一些感慨
最近一段時(shí)間, 突然發(fā)現(xiàn)了: 在文學(xué)上, 這句話(huà)很經(jīng)典 ,
悲劇就是把美好的東西毀滅給人看. -- 魯迅
生活中, 有各種開(kāi)心與悲傷, 其實(shí), 在人內(nèi)心深處是有一種對(duì)美好事物的向往,
由于它的存在, 才產(chǎn)生了各種目標(biāo)與信念. 但人真是一種奇怪的生物, 往往對(duì)自己現(xiàn)在或者所擁有的事物
不太注意和愛(ài)惜, 只在失去之后, 才知道它的珍貴!
這或許, 談不上一種毀滅, 但不懂得珍惜, 也是讓現(xiàn)在的自己所擁有的美好事物一點(diǎn)一點(diǎn)地失去......
博主并不是故意裝文藝范, 而是對(duì)生活和人生的一點(diǎn)思考, 也希望看到這段文字的您有所感觸和思考.