第九章接口
End in 9/21
###1、接口解耦
以生产芯片为例子,我们创建接口,作为芯片的模板,今后的升级芯片都需要按照接口中一些规定
进行生产。
######接口
interface Processor{
String name();
Object process(Object input);
}
换句话说,我们规定了所有芯片必须要有这两个方法。
那么我们对于按照规定生产出来的芯片,都可以以一种通用卡槽去运行,也就是不需要多余的区分。
######卡槽
class Apply{
public static void process(Processor p, Object s) {
System.out.println("Using Processor + " + p.name());
System.out.println(p.process(s));
}
}
那么现在按照规定生产出来的芯片,都可以在一种卡槽上面运行了
######接口的实现
class Upcase implements Processor{
@Override
public String name() {
// TODO Auto-generated method stub
return getClass().getSimpleName();
}
@Override
public String process(Object input) {
// TODO Auto-generated method stub
return ((String)input).toLowerCase();
}
}
接口的实现,在卡槽上面运作
######综合
public class Main {
public static void main(String[] args) {
Apply.process(new Upcase(), "Abcsas");
}
}
###2、适配器
老板一再强调: 别动我的祖传代码!
这个时候要想修改类,就要背负被老板臭骂的风险,因此适配器出现了
适配器接受接口,返回接口,我们可以看出产品的粗加工
这部分, 待深入了解再补充。pass