设计原则之迪米特法则的概念及实例代码操作
Posted 汐汐如梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计原则之迪米特法则的概念及实例代码操作相关的知识,希望对你有一定的参考价值。
场景
例题:从Excel文件中提取表格信息,并保存在数据库系统中
不使用迪米特法则的解法:
代码实现:
class ExcelToDB
private String fileName;
private String db;
public ExcelToDB(String fileName, String db)
super();
this.fileName = fileName;
this.db = db;
public String read()
return this.fileName+"文件内容!";
public void connectionDB()
// TODO Auto-generated method stub
System.out.println("连接"+this.db+"数据库系统");
public void saves(String conten)
// TODO Auto-generated method stub
System.out.println("把"+this.read()+"保存在数据库中");
//客户端程序
public class ClientDemo
public static void main(String[] args)
ExcelToDB toDB = new ExcelToDB("a.xsl", "mysql");
String str = toDB.read();
toDB.connectionDB();
toDB.saves(str);
迪米特法则的概念
使用迪米特法则的解法:
代码实现:
//Excel文件信息转换成数据库信息保存
public class ExcelToDB
private String fileName;
private String db;
public ExcelToDB(String fileName,String db)
super();
this.fileName = fileName;
this.db = db;
//私有化方法,避免暴露,符合迪米特法则
private String read()
return this.fileName+"文件内容";
private void connectionDB()
System.out.println("连接"+this.db + "数据库系统");
private void save(String conten)
System.out.println("把"+this.read()+"保存在数据库中");
//向外部暴露一个方法
public void perform()
String str = this.read();
this.connectionDB();
this.save(str);
//中介者
public class UtilConvert
private ExcelToDB todb;
public UtilConvert(ExcelToDB todb)
super();
this.todb = todb;
public void convert()
todb.perform();
//客户端
public class Client
public static void main(String[] args)
ExcelToDB todb = new ExcelToDB("a.xsl","MySQL");
UtilConvert convert = new UtilConvert(todb);
convert.convert();
运行截图:
以上是关于设计原则之迪米特法则的概念及实例代码操作的主要内容,如果未能解决你的问题,请参考以下文章