當我們不使用spring的時候 完成乙個簡單的 印表機任務是這樣的
//messageservice類 只提供 列印內容
public class messageservice
public string getmessage()
}
//messageprinter類 通過傳遞 server 來提供簡單的列印服務
public class messageprinter
public void printmessage()
public void setservice(messageservice service)
}
public static void main(string args)
這樣每次都需要手動建立例項
而現在我們使用spring來管理這些類 讓這些任務變的簡單
基於註解的方式初始化spring容器
在需要spring管理的類上方新增註解@component
@component //該註解 spring 自動為類建立例項物件
public class messageservice
@componentscan
public static void main(string args)
}
下面開始 初始化 spring 容器
該類物件是新增過 @componentscan 註解(spring容器)的 類物件
/*這個時候spring容器已經初始化成功 所有被掃瞄到的 包含@component註解的 類物件都會被初始化出來
所有被掃瞄到的 包含@component註解的類中的 構造方法 都會被呼叫*/
//呼叫 printer.getbean() 方法獲取 bean 物件
messageprinter printer = context.getbean( messageprinter.class ); //獲取printer物件
messageservice service = context.getbean(messageservice.class); //獲取service物件
printer.setservice(service); //傳遞service物件
printer.printmessage();
C 初始化方式
變數被預設初始化由變數型別和定義變數的位置決定,如果內建型別定義的變數在任何函式體之外即全域性變數,則被預設初始化為相關型別的預設值,如int型預設值為0,如果定義的變數位置在任何函式體之內即區域性變數,則不被初始化,乙個未被初始化的變數是未定義的,將會報錯。如果使用等號 初始化乙個變數,實際上執行...
變數初始化的方式
當物件在建立時獲得了乙個特定的值,我們說這個物件被初始化了。用於初始化變數的值可以是任意複雜的表示式。當一次定義了兩個或多個變數時,物件的名字在定義後就馬上可以使用了。例如我們可以這樣使用 使用剛剛定義的price初始化discount double price 109.99,discount pr...
選擇正確的初始化方式
uiview的首要問題就是既能從 中初始化,也能從xib中初始化,兩者有何不同?uiview 是支援nscoding協議的,當在 xib 或 storyboard 裡存在乙個 uiview 的時候,其實是將 uiview 序列化到檔案裡 xib 和 storyboard 都是以 xml 格式來儲存的...