用图说话
好处
1.只需要定义好IBaseDao的接口方法,并只需要实现BaseDaoImpl的方法,而具体的业务类和业务类/接口的方法的基本方法(IBaseDao已定义的)并不需要再考虑实现。
2.同时,业务接口/类还可以拓展属于自己的特殊方法。
3.同理,Service层亦可适用于此思想。
注意
需要明确的是:
1.接口不可以被实例化;
2.接口可以被继承;
3.抽象类可以被实例化(但如果假设业务的约束方法设为抽象类,那么业务实现类便违背了Java的单一继承的原则。)
推荐文献
[1] JDBC详解
[2] Java SE 之 数据库操作工具类(DBUtil)设计
[3] Dao层与连接池