IOC控制反转理解
Java资料站
共 6167字,需浏览 13分钟
·
2021-05-14 12:28
点击上方蓝色字体,选择“标星公众号”
优质文章,第一时间送达
1. IOC基础
2. IOC推导与理解
2.1、最基本的实现方式
interface Meizi {
public void describe();
}
class Yujie implements Meizi{
@Override
public void describe() {
System.out.println("御姐~");
}
}
//这里只列出一种女生类型的具体实现,其他的类似
interface Nan {
public void getMeizi();
}
class yihao implements Nan{
@Override
public void getMeizi() {
Meizi meizi = new Yujie();
meizi.describe();
}
}
class erhao implements Nan{
@Override
public void getMeizi() {
Meizi meizi = new Yujie();
meizi.describe();
}
}
2.2、采用组合的方式实现
interface Meizi {
public void describe();
}
class Yujie implements Meizi{
@Override
public void describe() {
System.out.println("御姐~");
}
}
//这里只列出一种女生类型的具体实现,其他的类似
interface Nan {
public void getMeizi();
}
class yihao implements Nan{
private Meizi meizi = new Yujie();
@Override
public void getMeizi() {
meizi.describe();
}
}
class erhao implements Nan{
private Meizi meizi = new Yujie();
@Override
public void getMeizi() {
meizi.describe();
}
}
public class Main {
public static void main(String[] args) {
yihao man1 = new yihao();
man1.getMeizi();
erhao man2 = new erhao();
man2.getMeizi();
}
}
2.3、采用聚合方式(松耦合)
interface Meizi {
public void describe();
}
class Yujie implements Meizi{
@Override
public void describe() {
System.out.println("御姐~");
}
}
//这里只列出一种女生类型的具体实现,其他的类似
interface Nan {
public void getMeizi();
}
class yihao implements Nan{
private Meizi meizi;
public void setMeizi(Meizi meizi) {
this.meizi = meizi;
}
@Override
public void getMeizi() {
meizi.describe();
}
}
class erhao implements Nan{
private Meizi meizi;
public void setMeizi(Meizi meizi) {
this.meizi = meizi;
}
@Override
public void getMeizi() {
meizi.describe();
}
}
public class Main {
public static void main(String[] args) {
yihao man1 = new yihao();
man1.setMeizi(new Yujie());
man1.getMeizi();
erhao man2 = new erhao();
man2.setMeizi(new Luoli());
man2.getMeizi();
}
}
3. IOC总结
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:
https://blog.csdn.net/weixin_43808717/article/details/116425554
锋哥最新SpringCloud分布式电商秒杀课程发布
👇👇👇
👆长按上方微信二维码 2 秒
感谢点赞支持下哈
评论
ExcaliburIoC 反转控制容器
该项目已退休!Excalibur,它的主要产品是一个由java写成的,名字叫做Fortress(要塞)的轻量级的可嵌入式反向控制容器。 该项目已经废弃!
ExcaliburIoC 反转控制容器
0
Swiz控制反转框架
Swiz模仿了Spring框架,它的核心是个简单的控制反转框架。借助于IoC框架,应用组件(例如视图)无需实例化其依赖(所用的对象),甚至都不用查找。在组件创建时框架会注入这些依赖(因此术语“依赖注入
Swiz控制反转框架
0