适配器模式:
如果你有两个编译好的(无源代码)类,类A有某些功能,但是需要一个xml读取模块才能工作,
这个模块要实现这个接口:
public interface XmlReader{
?????? public InputStream xmlReader();
}
你的另一个类B恰好有这个功能,但是B实现的是这个接口:
public interface ReaderXml{
????? ?public InputStream readerXml();
}
这个时候我们的做法是写个适配器
public class Adapter implements XmlReader extends B{
????? ?public InputStream xmlReader(){
????????? ?? ?return readerXml();
????? }
}
这个就是适配器模式了。
适配器模式还有另外一种实现方式
public class Adapter implements XmlReader
?????? ReaderXml b = new B();
???? ? public InputStream xmlReader(){
???????????? ??return b.readerXml();
????? ?}
}
如果你有两个编译好的(无源代码)类,类A有某些功能,但是需要一个xml读取模块才能工作,
这个模块要实现这个接口:
public interface XmlReader{
?????? public InputStream xmlReader();
}
你的另一个类B恰好有这个功能,但是B实现的是这个接口:
public interface ReaderXml{
????? ?public InputStream readerXml();
}
这个时候我们的做法是写个适配器
public class Adapter implements XmlReader extends B{
????? ?public InputStream xmlReader(){
????????? ?? ?return readerXml();
????? }
}
这个就是适配器模式了。
适配器模式还有另外一种实现方式
public class Adapter implements XmlReader
?????? ReaderXml b = new B();
???? ? public InputStream xmlReader(){
???????????? ??return b.readerXml();
????? ?}
}
dreamstone 2007-01-07 16:07
发表评论