public interface GenericDao
public List
}
class UserDao implements GenericDao
@Override
public List
return null;
}
}
我的问题是:为什么DAO不采用抽象类的方式来写呢?
我个人认为DAO的设计可以采用抽象类的方式来做,如:
public abstract class GenericDao
public abstract List
}
class UserDao extends GenericDao
@Override
public List
return null;
}
}
因为抽象类与子类的关系属于"is-a",而接口代表的是“协议”。
有些人说使用接口是为了避免只能单继承,我觉得这个说法不够说服力,请大家帮我解答一下,谢谢!