第八周 控制反轉與MVC模式
但是我們打算借助GUI(圖形化用戶界面)來介紹兩個設計思想:控制反轉和MVC設計模式。
部件是創建GUI的獨立部分,比如像按鈕、菜單、菜單項、選擇框、滑動條、文本框等。
Java類庫中有不少現成的部件。
控制反轉與Swing的消息機制
監聽器 -- 接口 -- 接口函數 -- 實現接口的類的對象 -- 運行時動態對象 注冊事件對象,調用接口函數 -- 接口統一,實現各異 --- 方法體寄存于實現該接口的類的接口函數方法體
- 有控件公布一個監聽者接口和一對注冊/注銷函數
- 你的代碼實現那個監聽者接口,并將監聽者對象注冊到控件上
- 一旦控件被點擊,就會反過來調用你所創建的監聽者對象實現的接口函數。---通過接口實現在一個類A里面執行另一個類B里面的函數且該函數一般會用到這個類B的數據。從而實現了一次類之間的數據通信,且不需要把類B的對象引用(類的代碼中用this指代)傳遞給A就能使用到B中的所有數據、成員。
內部類
內部類就是指一個類定義在另一個類的內部,從而成為外部類的一個成員。
因此一個類中可以有成員變量、方法,還可以有內部類。
實際上Java的內部類可以被稱為成員類,內部類實際上是它所在類的成員。
所以內部類也就具有和成員變量、成員方法相同的性質。
比如,成員方法可以訪問私有變量,那么成員類也可以訪問私有變量了。
也就是說,成員類中的成員方法都可以訪問成員類所在類的私有變量。
內部類最重要的特點就是能夠訪問外部類的所有成員。
MVC設計模式
MVC.png
其中, 示例代碼
kechengbiao.png
運行結果:
運行結果.png
完整的代碼示例見:
https://github.com/menglanyingfei/MOOC_Wengkai_Java/tree/master/code/kechengbiao
寫在最后:
- 寫這篇博客時聽的歌曲
http://music.163.com/#/song?id=400579141 - 寫作時間
2017/07/19
23:48:00 - 博客鏈接
http://blog.csdn.net/menglanyingfei?viewmode=contents - 一些感慨
最近一段時間, 突然發現了: 在文學上, 這句話很經典 ,
悲劇就是把美好的東西毀滅給人看. -- 魯迅
生活中, 有各種開心與悲傷, 其實, 在人內心深處是有一種對美好事物的向往,
由于它的存在, 才產生了各種目標與信念. 但人真是一種奇怪的生物, 往往對自己現在或者所擁有的事物
不太注意和愛惜, 只在失去之后, 才知道它的珍貴!
這或許, 談不上一種毀滅, 但不懂得珍惜, 也是讓現在的自己所擁有的美好事物一點一點地失去......
博主并不是故意裝文藝范, 而是對生活和人生的一點思考, 也希望看到這段文字的您有所感觸和思考.