ps:很少寫博~看了一篇文章受了刺激~決定也寫寫部落格~文筆很次大家喜歡看就看,不喜歡也別拍磚~
很久很久以前~~
在美麗的城堡裡面住著一位漂亮的公主,他和他的家人、朋友幸福的生活著;
有一天**的格格巫來到了這個城堡,他看見了漂亮的公主於是她決定要將公主搶走~
格格巫使用了乙個**的魔法將公主抓了起來,公主很害怕、國王很著急~
這是來了乙個真正的勇士他的名字叫做小灰灰~~~
小灰灰偉大的英雄~他經歷的千難萬險拯救了公主~
公主深深的愛上了小灰灰~從此他們幸福的在一起白頭偕老~
這是一段美麗的故事,指頭人們決定將這段感人的歷史記錄下來
於是指頭人開始嘗試演繹這段歷史~/**
* 偉大的英雄
*/public class hero
public princess embarkonquest() throws princessnotfoundexception
}/**
* 艱難的拯救任務
*/public class rescuequest
}/**
* 美麗的公主
*/public class princess
}
/**
* 指頭人們嘗試演繹這段歷史
*/public class storytest extends testcase
public static test gettestsuit()
public void teststory() throws princessnotfoundexception
}
在公開表演之前他們信心十足~但細心的指頭人們還是決定進行一次彩排~
可怕的事情發生了~
**他們的英雄需要乙個拯救任務!他們測試英雄的描述就等於間接的測試了乙個拯救任務,而拯救任務又關聯了一場異常....
**這樣他們根本沒有辦法可控的驗證英雄的形象是否可靠~
聰明的指頭人發現了問題的關鍵~hero怎麼獲得rescuequest的?
不管hero是例項化了乙個rescuequest還是從jndi查詢了乙個quest,hero都要負責去獲得乙個任務。
但是給英雄設定障礙應該是可惡的格格巫的工作啊~
問題出現了我們的hero依賴quest
**************指頭人的回憶錄**************
在業務處理過程中常常需要多個物件相互關聯才能進行。
這種耦合是乙個雙頭怪:
他常常給我們帶來問題,但是沒有耦合我們卻什麼都不能做。
這種耦合有時候叫做依賴~
通常解決耦合的方法就是講具體的實現類隱藏在介面之下
這樣替換具體的實現類就不會影響引用類
**************************************
於是乎指頭人從新修改了他們的描述
他們建立乙個抽象的介面代表rescuequest
public inte***ce quest
並且修改了其它的類以適應這次修改,對於指頭人這是一次痛苦的經歷
但是問題並沒有好轉,因為即使是這樣小灰灰還是只能進行拯救公主的冒險
**************指頭人的回憶錄**************
問題是該樣小灰灰自己去獲取乙個任務
還是應該由格格巫給他乙個任務
這是問題的關鍵
**************************************
指頭人修改了hero讓他可以被給予乙個任務而不是自己去獲取乙個任務
他們給他新增了乙個setter
public class hero
public object embarkonquest() throws questfaildexception
public void setquest(rescuequest quest)
}
好了現在小灰灰可以接受挑戰啦~~~
我們來看看格格巫是怎麼給小灰灰賦予乙個挑戰的~
<?xml version="1.0" encoding="utf-8"?>
好吧~
/**
* 指頭人們嘗試演繹這段歷史
*/public class storytest extends testcase
public static test gettestsuit()
// public void teststory() throws questfaildexception
public void teststory2() throws questfaildexception
}
我承認我的故事講得很爛~很爛~
第一篇希望大家能見諒~
總結一下:1.我們離不開**的耦合,可以理解成耦合就是一種依賴
2.解耦合常用的一種方式使用介面隱藏實現類,這樣實現類的改變就不會影響引用類
3.啥事依賴說完了,用硬編碼方式寫依賴的缺陷希望大家能體會。di叫做依賴注入,至於怎麼注入下次再說啦~spring框架入門
srping是乙個開源的控制反轉 inversion of control 和面向切面 aop 的容器,它的主要目的是簡化企業開發 public class personservicebean ioc控制反 所謂控制反轉就是應用本身不負責依賴物件的建立及維護,依賴物件的建立及維護是由外部容器負責的。...
Spring框架入門(一)
框架就是制訂一套規範或規則,程式設計師在該規範或規則下工作,形象地說就是在搭好的舞台上表演 半成品 封裝了特定的處理流程與控制邏輯 成熟的 不斷公升級改進的軟體 框架一般是封裝了邏輯 高內聚的,類庫則是鬆散的工具組合 框架專注於某一領域,類庫則是更通用 軟體系統日趨複雜 重用度高,開發效率與質量提高...
Spring框架入門 day02
註解名稱 屬性名稱 屬性值 註解使用在類上面,方法上面 和 屬性上面 注意 除了使用beans,context,core,expression,commons logging,log4j等基本jar包之外,還需要匯入aop的jar包匯入包 建立類,方法 建立spring配置檔案,引入約束 1 第一天...