IoC
就是
Inversion of Control
,控制反转。在
Java
开发中,
IoC
意味着将你设计好的类交
给系统去控制,而不是在你的类内部控制。这称为控制反转。
下面我们以几个例子来说明什么是
IoC
假设我们要设计一个
Girl
和一个
Boy
类,
其中
Girl
有
kiss
方法,
即
Girl
想要
Kiss
一个
Boy
。
那么,我们的问题是,
Girl
如何能够认识这个
Boy
?
在我们中国,常见的MM与
GG
的认识方式有以下几种
1
青梅竹马;
2
亲友介绍;
3
父母包办
那么哪一种才是最好呢?
青梅竹马:
Girl
从小就知道自己的
Boy
。
public class Girl {
void kiss(){
Boy boy = new Boy();
}
}
然而从开始就创建的
Boy
缺点就是无法在更换。并且要负责
Boy
的整个生命周期。如果我
们的
Girl
想要换一个怎么办?(严重不支持
Girl
经常更换
Boy,#_#
)
http://user.qzone.qq.com/3184973455
http://user.qzone.qq.com/2289555839
http://user.qzone.qq.com/2413219376
http://user.qzone.qq.com/3134492214
http://user.qzone.qq.com/2338966447
http://user.qzone.qq.com/2833262360
http://user.qzone.qq.com/2309677917
http://user.qzone.qq.com/2712657476
http://user.qzone.qq.com/3131536774
http://user.qzone.qq.com/2849200790
http://user.qzone.qq.com/2377678239
http://user.qzone.qq.com/1261584337
http://user.qzone.qq.com/2839535490
http://user.qzone.qq.com/3085174574
http://user.qzone.qq.com/3095908434
http://user.qzone.qq.com/2980578685
http://user.qzone.qq.com/2334159896
http://user.qzone.qq.com/2812747595