/** *入口 * @author lilili */ public class TestService { public static void main(String[] args) throws Exception { //appleService kc =new appleService();//苹果类实例 BanananService kc =new BanananService();//香蕉类实例 AbsPublicClass abs= kc; System.out.println( abs.base()); } }
/** * 主抽象接口serveic类 * */ public abstract class AbsPublicClass { // @Autowired 公共的依赖注入 // protected PublicAutowired publicAutowired; //公共的常量 protected static final String HAHA= "HAHA"; //公共的方法 public abstract String base() throws Exception; }
/** * 子抽象接口实现类 *真正的处理 */ public abstract class AbsHandle extends AbsPublicClass { public abstract String eat() ; @Override public String base() throws Exception { System.out.println(ni());//根据不同的实例去调用不同的逻辑处理 System.out.println(HAHA);//公共的常量 //公共的处理方法 return "base"; } public String ni(){ return eat(); } }
/** * 单独的处理各自的业务逻辑 * */ public class AppleService extends AbsHandle { @Override public String eat() { // TODO Auto-generated method stub return "传递进来的是苹果实例"; } }
/** * 单独的处理各自的业务逻辑 */ public class BanananService extends AbsHandle { @Override public String eat() { // TODO Auto-generated method stub return "传递进来是香蕉实例"; } }