步骤如下:
(1)定义一个接口,此接口提供若干个不同功能的抽象方法
(2)创建一个抽象类并实现此接口
(3)在这个抽象类内部,以空实现的方式重写接口中的抽象方法
(4)在这个抽象类的子类里面,按照自己的业务逻辑重写抽象方法,想要哪些方法就重写哪些方法
【举例详解】
(1):定义一个接口,接口中提供了几个不同功能的抽象方法
public interface UserDao{
// 此接口中的4个抽象方法必须由其子类(适配器模式下是抽象类)重写!
public abstract void add();
public abstract void delete();
public abstract void update();
public abstract void find();
}
(2),(3):创建一个抽象类并实现接口,在这个抽象类内部以空实现的方式重写接口中的抽象方法
public abstract class UserAdapter implements UserDao{
public void add(){}//此处的代码块{}也叫方法体,{}里面没内容就是空实现
public void delete(){}//在什么时候不为空呢?此抽象类的子类重写方法的时候!
public void update(){}
public void find(){}
}
(4):在这个抽象类的子类里面,按照自己的业务逻辑重写接口的抽象方法,想要哪些方法就重写哪些方法
public class UserDaoImpl2 extends UserAdapter{
@Override
public void find() { //我只要查询功能,只需重写find()方法即可
System.out.println("查询功能");
}
}