依赖倒转原则:
一个电子阅览器可以读任何类型的书籍,如PDF、word等。输入想阅读的书籍类型,进行输出此类型的书有哪些
EBookReader类,电子阅览器进行输出:
package bookreader619;
import java.util.Scanner;
public class EBookReader619 {
public static void main(String args[]) {
System.out.println("请输入想阅读文档类型的编号:");
System.out.println("1.PDF文档");
System.out.println("2.Word文档");
System.out.println("3.Txt文档");
Scanner sc0 = new Scanner(System.in);
int a = sc0.nextInt();
EBookReader619 book = new EBookReader619();
book.read(a);
}
public void read(int a) {
IBook619 i;
switch(a){
case 1:
i = new PDFBook619();
i.printTitle619();
break;
case 2:
i = new WordBook619();
i.printTitle619();
break;
case 3:
i = new TxtBook619();
i.printTitle619();
break;
default:
System.out.println("您的输入有误!");
break;
}
}
}
IBook接口,让其他书籍类型类实现它,实现依赖倒转原则:
package bookreader619;
public interface IBook619 {
void printTitle619();
}
具体类PDF类:
package bookreader619;
public class PDFBook619 implements IBook619{
public void printTitle619() {
System.out.println("计算机算法分析与设计");
}
}
具体类Txtbook类:
package bookreader619;
public class TxtBook619 implements IBook619{
public void printTitle619() {
System.out.println("软件项目管理");
}
}
具体类WordBook类:
package bookreader619;
public class WordBook619 implements IBook619{
public void printTitle619() {
System.out.println("软件设计模式与体系结构");
}
}