模拟在原来系统功能中需要引进新功能
比如原来有一个按钮,点击后会改变颜色,现在在改变颜色的同时改变一个文本框打印信息,不破坏原来的系统,那么我们原来的接口功能就是改变颜色。
package com.test.adapter;
/**
* 现在的一个功能,比如按下一个按钮,按钮的颜色改变,后续需要扩展的为按下按钮显示一个文本框打印文字
* @author
*
*/
public class NowInterfaceFunction {
public void changeColor(){
System.out.println("按钮颜色改变");
}
}
————————————————————————————————————————————————————————————————————————————
package com.test.adapter;
public interface IAdapter {
void printFont();
}
————————————————————————————————————————————————————————————————————————————
package com.test.adapter;
public class TextButtonAdapter extends NowInterfaceFunction implements IAdapter{
// NowInterfaceFunction function = new NowInterfaceFunction();
// NowInterfaceFunction function = new NowInterfaceFunction();
// NowInterfaceFunction function = new NowInterfaceFunction();// 有多个原本的接口函数需要使用到时
@Override
public void printFont() {
// TODO Auto-generated method stub
super.changeColor();
System.out.println("文本框打印文字");
}
}
—————————————————————————————————————————————————————————————————————————————
System.out.println("------------------------------------");
IAdapter function = new TextButtonAdapter();
function.printFont();
——————————————————————————————————————————————————————————————————————————————
结果:
------------------------------------
按钮颜色改变
文本框打印文字
——————————————————————————————————————————————————————————————————————————————
比如原来有一个按钮,点击后会改变颜色,现在在改变颜色的同时改变一个文本框打印信息,不破坏原来的系统,那么我们原来的接口功能就是改变颜色。
package com.test.adapter;
/**
* 现在的一个功能,比如按下一个按钮,按钮的颜色改变,后续需要扩展的为按下按钮显示一个文本框打印文字
* @author
*
*/
public class NowInterfaceFunction {
public void changeColor(){
System.out.println("按钮颜色改变");
}
}
————————————————————————————————————————————————————————————————————————————
package com.test.adapter;
public interface IAdapter {
void printFont();
}
————————————————————————————————————————————————————————————————————————————
package com.test.adapter;
public class TextButtonAdapter extends NowInterfaceFunction implements IAdapter{
// NowInterfaceFunction function = new NowInterfaceFunction();
// NowInterfaceFunction function = new NowInterfaceFunction();
// NowInterfaceFunction function = new NowInterfaceFunction();// 有多个原本的接口函数需要使用到时
@Override
public void printFont() {
// TODO Auto-generated method stub
super.changeColor();
System.out.println("文本框打印文字");
}
}
—————————————————————————————————————————————————————————————————————————————
System.out.println("------------------------------------");
IAdapter function = new TextButtonAdapter();
function.printFont();
——————————————————————————————————————————————————————————————————————————————
结果:
------------------------------------
按钮颜色改变
文本框打印文字
——————————————————————————————————————————————————————————————————————————————