最近辞职在家,有空写写博客。当然本人也会时不时的发疯在开头写一些有的没的,别介意。
当把最爱的那个人放手时,所有的东西也就释怀了。
JAVA适配器的由来:基于类只能继承一个父类、却可以实现多个接口的限制产生的一种设计者模式
是不是觉得很高大上,设计者模式耶
出现的(也就是会使用到的)场景: 当当前类不存在某个实现的方法A却又必须要用到该方法A的时候
这个时可能就会有人说,直接在类里面写一个方法不就好了吗,可是你有没有想过方法A 再别的类也要用到呢,难道在别的类又重写一遍? 这不符合程序员的写法啊。于是适配器模式这一说法就诞生了
Java的适配器模式主要有两种
类适配
对象适配
在说适配之前需要了解一些表示性的类,也就是演示时用到的类,这些类的命名个人可以根据实际情况进行命名
Targe 接口目标类(该类是以接口的形式进行创建的)
Adapee 适配类
Adapter 适配器
类适配
class interface Targe {
void superVoid();//方法A
}
class Adapee {
public void void1();
}
class ConstemAdapee implements Targe{
void superVoid(){//该方法是实现目标接口类的
};/
}
class MyAdapter extends Adapee implements Targe{
void superVoid(){
};//方法A
}
//这里是简化了测试执行实现的方法
class main(){
Adapee adapee= new Adapee();
adapee.void1();//执行已存在的方法
Targe targe = new MyAdapter();
targe.superVoid();//执行方法A
}
对象适配
就是将Adapee以对象的形式传入MyAdaper,而不是MyAdaper去继承
class MyAdapter implements Targe{
Adapee mAdapee;
public MyAdapter(Adapee adapee){
this.mAdapee = adapee;
}
public void void1(){//调用该对象进行方法调用即可
mAdapee.void1();
}
public void superVoid(){
};//方法A
}
//这里是简化了测试执行实现的方法
class main(){
Adapee adapee= new Adapee();
adapee.void1();//执行已存在的方法
MyAdapter adapter= new MyAdapter(new Adapee());
}