首先,使用接口编程是为了提高程序的可维护性和可伸缩性。如果你在一个类里使用组合调用另一个类时,你直接使用另一个具体的类,这样的话你就不这个类写死了,以后假如业务逻辑变化时,你就必须修改原代码。你如果写的是一个接口,当业务逻辑变化时你只需写一个新的类让他实现这个接口。
第二,你还要用类似spring这样的东西,实现松耦合,利用配置文件修改程序。比如要完成一个登录功能:
我先写dao层,其中用到了4个类,
DaoBase.java,用来得到user对象
package com.ssh2demo.dao;
import com.ssh2demo.domain.User;
public abstract class DaoBase {
private User user;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
}
IUserDao.java,一个接口,用来封装登录的方法
public interface IUserDao {
public void insertUser();
public boolean getUserByName(String name);//如果返回true代表登录成功
}
IUserDao的实现类UserDaoImp.java
package com.ssh2demo.dao;
import com.ssh2demo.domain.User;
public class UserDaoImp extends DaoBase implements IUserDao{
//..插入一个user
User user = new User();
public void insertUser(){
user.setAge(23);
user.setName("hth");
user.setPassword("123456");
}
public boolean getUserByName(String name){
insertUser();
if(user.getName().equals(name))
return true;
else
return false;
}
}
UserDaoDeco.java这个类继承了UserDaoImp,用来向spring文件里注入
<bean />
</property>
</bean>
相关文章: