目的
实际业务中实现类继承的接口有太多,而我们实际想用的很少,解决这样冲突的办法
流程
- 定义一个abstract类实现接口
- 定义一个类继承atstract,间接继承了接口
知识点
abrstract继承接口可以选择实现接口的方法, 或者不实现,但是未被实现的方法必须由继承了这个类的子类实现. abstract这类相当于接口的一个过滤器,单纯的过滤实现类不需要实现的方法
代码:
public interface Servlet {
public void doGet();
public void doPost();
public void service();
}
/**
\* 抽象类可以选实现接口的方法,没有实现的接口必须由其子类实现
*/
public abstract class ServletAdapter implements Servlet{
public void doGet(){}
public void doPost(){}
// 未实现
// public void service()
}
/**
\* 子类继承父类是abstract的类,必须实现其父类未实现的接口
*/
public class MySevelet extends ServletAdapter {
public void service() {
System.out.println("选择实现了我们关心的一个方法");
}
}
public class App
{
public static void main( String\[\] args )
{
System.out.println( "Hello World!" );
Servlet servlet = new MySevelet();
servlet.service();
}
}
Git
https://gitee.com/ossea/designPattern.git
来源:oschina
链接:https://my.oschina.net/osmoon/blog/3164715