java 设计原则(五) 迪米特原则

定义:一个对象应该对其他对象保持最少的了解,又称最少直到原则。
精良降低类类之间的耦合。
优点:降低类之间的耦合。

一个方法 放在本类中既不增加类间关系 也不对本类产生负面影响。
简单来说 你要增加的类 已经 和 你需要引用的类之间有联系了

强调只和朋友交流,不和陌生人说话。
朋友: 出现在成员变量、方法的输入、输出参数的类称为成员朋友类、而出现在方法体内部的类不属于朋友类。

public class Course {
}
public class Boss   {
    public void commandCheckNumber(TeamLeader teamleader){
    //Course 不是 Boss的直接引用(朋友)
            //Boss 没必要和COurse 做交流 只要把 结果返回给Test
        List<Course> courseList = new ArrayList<Course>();
        for(int i=0;i<20;i++){
            courseList.add(new Course());
        }
        teamleader.checknumsOfCourses(courseList);

    }

}

public class TeamLeader {

    public void checknumsOfCourses(List<Course> courseList){
        System.out.println("在线课程的数量是:" +courseList.size());

    }
}

public class Test {
    public static void main(String[] args) {
        Boss boss = new Boss();
        TeamLeader teamLeader = new TeamLeader();
        boss.commandCheckNumber(teamLeader);
    }
}


在这里插入图片描述

在这里插入图片描述

public class TeamLeader {

    public void checknumsOfCourses(TeamLeader teamLeader){
        List<Course> courseList = new ArrayList<Course>();
        for(int i=0;i<20;i++){
            courseList.add(new Course());
        }
        System.out.println("在线课程的数量是:" +courseList.size());

    }
}

public class Boss   {
    public void commandCheckNumber(TeamLeader teamleader){
        teamleader.checknumsOfCourses(teamleader);

    }

}
public class Test {
    public static void main(String[] args) {
        Boss boss = new Boss();
        TeamLeader teamLeader = new TeamLeader();
        boss.commandCheckNumber(teamLeader);
    }
}

posted @ 2019-12-15 14:23  caomaoboy  阅读(122)  评论(0)    收藏  举报