public interface IStep {public String getPre();public String getNext();
}public interface IStepV {public String getStepTwo();
}
//抽象类实现两个接口
public abstract class ABaseStep implements IStep , IStepV {private Integer sk;public Integer getSk() {return sk;}public void setSk(Integer sk) {this.sk = sk;}
}
//继承抽象类
public class ExcelInput extends ABaseStep {@Overridepublic String getPre() {return null;}@Overridepublic String getNext() {return null;}@Overridepublic String getStepTwo() {return null;}
}
//抽象类里面包含抽象方法
public abstract class ARead {public String get(){return "";}public abstract IStep createInput();public abstract IStepV createRead();
}
//继承包含抽象方法的抽象类
public class Read extends ARead {@Overridepublic IStep createInput() {ABaseStep step= createXLS();step.setSk(1);System.out.println(step.getSk());return step;}@Overridepublic IStepV createRead() {ABaseStep stepV= createXLSA();return stepV;}public ABaseStep createXLS(){ExcelInput sc=new ExcelInput();System.out.println("ABaseStep create xls");return sc;}public ABaseStep createXLSA(){ExcelInput sc=new ExcelInput();return sc;}
}
//测试类
public class Main {public static void main(String[] args) {ARead a=new Read();IStep step=a.createInput();Read read = new Read();IStepV stepv=read.createRead();System.out.println(new Main().getString(read));}public String getString(Read b) {return b.get();}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!