基础知识:
1.类继承(extends)类,接口继承接口,类实现(implements)接口
2.接口没有方法体,只能声明函数
3.一个类可以实现多个接口,只能继承一个类
4.类必须重写接口的所有方法,不必须重写父类的所有方法
5.复杂关系:若接口A extends 接口B(根据1),则接口A不必须重写接口B(根据4)。
若类a implements A,则a必须要重写接口A和接口B所有的方法
若类b implements B,类a extends 类b,所以a的父类b已经实现了B的所有方法,那么a只必须要重写A的所有方法就可以了
举例:
接口A——UserService 类a——UserServiceImpl
接口B——BaseDao 类b——AbstractDao
1.继承关系不是必须要重写,接口必须要重写,所以UserService接口继承BaseDao接口不必须重写
2.UserServiceImpl实现UserService的接口,必须重写UserService和BaseDao接口的所有方法
3.若UserServiceImpl继承AbstractDao,由于AbstractDao有其父类BaseDao接口的所有方法,所以UserServiceImpl只需重写UserService接口的所有方法
相关代码如下:
BaseDao.java
public interface BaseDao {
public void save();
}
AnstractDao.java
public abstract class AnstractDao implements BaseDao{
public void save(){
System.out.println("hello");
}
}
UserService.java
public interface UserService extends BaseDao {
}
UserServiceImpl.java
public class UserServiceImpl extends AnstractDao implements UserService{
}