您的位置:首页 > 其它

札记—适配器模式(穿插父类引用指向子类)

2016-03-17 19:57 411 查看
原文链接 http://www.androidchina.net/1818.html

结构型模式:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式

本文主要写适配器模式至类的适配

结合代码,夸自己一句,那叫图文并茂哈哈

说道类的适配模式,总感觉有点向父类引用指向子类,且看代码

定义一个类:Source

public class Source  {

public void method(){
Log.e("===","Source :"+"source");
}
}


定义一个接口Targetable

/**
* Created by zss on 2016/3/17 0017.
*/
public interface Targetable {

public void method1();

public void method2();

}


定义一个类,继承类Source 实现Targetable 接口

public class Adapter extends Source implements Targetable {
@Override
public void method1() {
Log.e("===","继承 source :");
}
/* @Override
public void method() {    //先注释掉,下面解释原因
super.method();
Log.e("===","重写了该方法,运行子类的") ;
}*/
@Override
public void method2() {
Log.e("===","实现 Targetable :");
}
}


测试类的实现

public class AdapterTest {

public static void main(String[] args) {
Targetable target = new Adapter();
target.method1();
target.method2();
}
}


打印结果:



知识二: 类Adapter 继承Source 实现接口Targetable。测试类里面,声明的是父类,实际指向的是子类的一个对象。可以用这几个关键词来概括:多态、动态链接,向上转型。且看下图



其一,引用只能调用父类里面的方法和变量

其二,如果子类重写了父类的方法,就调用子类里面重写的方法。注:不是重载

如下图:



子类重写父类的方法和重载父类的方法,这里就不多介绍了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息