廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 3327 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
cmzy232
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x10
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[Java][教學] 关于IoC的介绍
关于IoC的介绍

欢迎大家拍装
  (转自我的java博客

文章地址:http://www.blogjava.net/cmzy/archive/2008/07/15/214971.html)




  IoC即Inversion of Control,控制反转。它不是一种编程技术,而是一种设计模式。利用它,可以促进应用程序组件或类之间的松散耦合。一般的情况下,我们需要自己创建对象的实例,比如在Computer类中创建一个打印机的实例:
1Printer printer = new DellPrinter();//创建一个戴尔打印机的实例 如果使用IoC,我们则不必再自己创建类的实例,而是将创建对象的任务交给IoC容器去做。这样,我们在使用某个对象的时候,就可以直接从容器中获取一个实例。就像一个好莱坞的原则一样“Don't call me.I'll callyou!”,容器会在合适的时候创建它。我们就像不必考虑对象的销毁一样,也可以不必考虑对象的创建,这就是控制反转。
   这样做有什么好处呢?在上面的例子中,我们创建为我们的电脑安装了一个戴尔打印机(创建一个戴尔打印机类的实例)。可是如果有一天,我们系统要升级了,需要使用惠普的打印机。这时,由于我们把打印机已经“固化”到电脑中了(打印机和电脑的耦合很高),要更换打印机,就不得不先拆开电脑,从主板中卸下打印机,再安装新的打印机(修改Computer类的源代码,然后重新编译,重新部署)。可以看到,这是一个计算机专家才能完成的任务,对于一个对计算机不是很了解的人来说,这将会是一场噩梦。那么如何解决这个问题呢?办法之一就是我们把打印机抽象成一个接口:

1 public interface  Printer  {
2      public void  print();
3 }
这样各个厂商在生产打印机的时候,就只是需要实现这个接口所定义的功能就行了。就像我们在电脑上做一个专门的打印机模块,需要的时候卸掉原来的模块,再安装上新型号就的打印机可以了,前提是新的模块必须和以前的有一样的 ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容




獻花 x0 回到頂端 [樓 主] From:四川 | Posted:2008-08-08 23:21 |
cmzy232
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x10
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

奥!我的代码怎么变成了这样……


獻花 x0 回到頂端 [1 樓] From:四川 | Posted:2008-08-08 23:26 |
arelier
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x42 鮮花 x853
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

表情 大概是你用網頁直接複製貼上的原因吧


我們政府真是學人精~啊~~~~~~
哦~我的天吶~ 希望茂德跟茂矽一樣有敗部復活的機會~"~

人生如霧亦如夢 緣生緣滅 還自在
獻花 x0 回到頂端 [2 樓] From:臺灣和信超媒體寬帶網 | Posted:2008-08-08 23:30 |
cmzy232
數位造型
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x10
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

就是欧……幸好我贴了文章原地址……


獻花 x0 回到頂端 [3 樓] From:四川 | Posted:2008-08-08 23:34 |
mixccc 會員卡
數位造型
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x17
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

相關的資料,我會到下面的地方參考...

Link1 (English)

有興趣的人,也可以看下面的繁體介紹...

Link2 (CHT-Big5)


獻花 x0 回到頂端 [4 樓] From:臺灣 | Posted:2008-08-09 12:54 |
a09000320 手機
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x4 鮮花 x15
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

@@能否直接用網頁出來會比較好吧~


獻花 x0 回到頂端 [5 樓] From:歐洲 | Posted:2008-08-31 13:54 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.017394 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言