其他分享
首页 > 其他分享> > 迪米特原则

迪米特原则

作者:互联网

迪米特原则主要强调类与类之间的耦合度。
现在来设计一个权限系统,boss需要查看目前发布到线上的课程数。这时候,这时候boss要找TeamLeader去统计,TeamLeader再把结果告诉boss,接下来我们来看具体例子:

public class cource {}
public class TeamLeader {
    public void checkNumberOfCource(List<cource> courceList){
        System.out.println("目前已发布的课程数量:"+courceList.size());
    }
}
public class Boss {
    public void commandCheckNumber(TeamLeader teamLeader){
        //模拟boss一页一页往下翻,Teamleader实时统计
        List<cource> list = new ArrayList<cource>();
        for(int i =0 ; i<20;i++){
            list.add(new cource());
        }
        teamLeader.checkNumberOfCource(list);
    }
}
public static void main(String[] args) {
        Boss boss =new Boss();
        TeamLeader teamLeader=new TeamLeader();
        boss.commandCheckNumber(teamLeader);
}

要是这样的话也能实现这个需求,根据迪米特原则,boss没有必要去知道具体的实现。

public class TeamLeader(){
	public void checkNumberOfCource(){
        //模拟boss一页一页往下翻,Teamleader实时统计
        List<cource> list = new ArrayList<cource>();
        for(int i =0 ; i<20;i++){
            list.add(new cource());
        }
        System.out.println("目前已发布的课程数量:"+list.size());
    }
}

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

迪米特原则说的就是只和朋友交流,不和陌生人交流

标签:TeamLeader,原则,void,米特,public,boss,class
来源: https://blog.csdn.net/weixin_45541359/article/details/99763380