控制反转IOC和依赖注入DI的区别

准备两个实体类:Student类 和 Teacher类

//1.Student实体类 
public class Student {
    private int sid;
    private String sname;
    private int age;
    //创建教师属性
    private Teacher teacher;

    public Student() {
    }

    public Student(int sid, String sname, int age) {
        this.sid = sid;
        this.sname = sname;
        this.age = age;
    }

    public Student(int sid, String sname) {
        this.sid = sid;
        this.sname = sname;
    }

    public Student(int sid, int age) {
        this.sid = sid;
        this.age = age;
    }

   (所有属性的getter和setter器)
   (重写toString方法)
   (重写equals和hashCode方法)
}


//2.Teacher实体类
public class Teacher {
    private int tid;
    private String tname;

    public Teacher() {
    }

    public Teacher(int tid, String tname) {
        this.tid = tid;
        this.tname = tname;
    }

    public Teacher(String tname) {
        this.tname = tname;
    }
    
   (所有属性的getter和setter器)
   (重写toString方法)
   (重写equals和hashCode方法)    
}

注意:Teacher类作为Student的一个属性存在于Student类中,是引用数据类型;

           Student类的其他属性是基本数据类型

总结:

当给基本属性赋值的时候IOC就可以,但是要给引用数据类型赋值就必须借助DI依赖注入了;

IOC是容器,DI是注入这一行为,DI是IOC的具体功能的实现,而IOC则是DI发挥的平台和空间。

发布了53 篇原创文章 · 获赞 0 · 访问量 1672

猜你喜欢

转载自blog.csdn.net/weixin_45450428/article/details/102928409