适配器模式也叫做包装模式;就是把内部结构包装(适配)成用户期待的格式,使得可以兼容使用
通过继承方式使用适配器模式
/**
* @author maikec
* @date 2019/5/9
*/
public interface Print {
/**
* 打印带括号的消息
*/
void printParen();
/**
* 打印带*号的消息
*/
void printAster();
}
/**
* 实际使用中的类
* @author maikec
* @date 2019/5/9
*/
public class Banner {
private final String msg;
public Banner(String msg){
this.msg = msg;
}
public void showWithParen(){
System.out.println( "(" + msg + ")" );
}
public void showWithAster(){
System.out.println( "*" + msg + "*" );
}
}
/**
* @author maikec
* @date 2019/5/9
*/
public class PrintBannerAdapter extends Banner implements Print {
public PrintBannerAdapter(String msg) {
super( msg );
}
@Override
public void printParen() {
showWithParen();
}
@Override
public void printAster() {
showWithAster();
}
}
/**
* @author maikec
* @date 2019/5/9
*/
public class AdapterExtendDemo {
public static void main(String[] args) {
Print print = new PrintBannerAdapter( "hello adapter" );
print.printAster( );
print.printParen();
}
}
复制代码
通过引用使用适配器模式
/**
* 需求
* @author maikec
* @date 2019/5/9
*/
public abstract class Print {
/**
* 打印带括号的消息
*/
public abstract void printParen();
/**
* 打印带*号的消息
*/
public abstract void printAster();
public void i(){
}
}
/**
* 实际使用中的类
* @author maikec
* @date 2019/5/9
*/
public class Banner {
private final String msg;
public Banner(String msg){
this.msg = msg;
}
public void showWithParen(){
System.out.println( "(" + msg + ")" );
}
public void showWithAster(){
System.out.println( "*" + msg + "*" );
}
}
/**
* @author maikec
* @date 2019/5/9
*/
public class PrintBannerAdapter extends Print {
private Banner banner;
public PrintBannerAdapter(Banner banner){
this.banner = banner;
}
@Override
public void printParen() {
banner.showWithParen();
}
@Override
public void printAster() {
banner.showWithAster();
}
}
/**
* @author maikec
* @date 2019/5/9
*/
public class AdapterReferenceDemo {
public static void main(String[] args) {
Print print = new PrintBannerAdapter( new Banner( "Hello Adapter" ) );
print.printAster();
print.printParen();
}
}
复制代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
100个可操作的网络赚钱方法
陶秋丰 / 云南科技 / 2009-12 / 29.80元
《100个可操作的网络赚钱方法》专为有志于网上创业的读者量身打造,作者是“实战型”的网赚高手,在17岁时就通过互联网创业“年人10万”,如今结合自身的亲身实战经验,与大家分享可以实实在在盈利的100个网络赚钱方法和技巧。内容包括:网站创建与推广、竞价广告、联盟赚钱、网站SEO优化、域名投资、广告投放盈利、威客、博客、淘客赚钱等多个方面。 本手册中作者结合自身的网络赚钱经历,通过具体的、可操作......一起来看看 《100个可操作的网络赚钱方法》 这本书的介绍吧!