门户网站建设情况报告,应用市场华为,弄一个关于作文的网站怎么做,做网站策划师的图片适配器模式的运用主要应用#xff1a;可以在符合OCP原则(开笔原则)的基础上#xff0c;为类增加新的功能。在现有功能上添加新的功能时无须修改原有功能代码。主要角色#xff1a;目标角色#xff1a;就是期待得到的接口#xff0c;如给汽车添加GPS的接口;源角色#xff…适配器模式的运用主要应用可以在符合OCP原则(开笔原则)的基础上为类增加新的功能。在现有功能上添加新的功能时无须修改原有功能代码。主要角色目标角色就是期待得到的接口如给汽车添加GPS的接口;源角色需要被增加功能的类或接口如汽车类适配器角色新创建的类在源角色的基础上实现了目标角色如已经成功添加了GPS的汽车类例子为汽车添加GPS功能1.建立目标角色——添加GPS的接口/*** 定义GPS接口** author XIEHEJUN**/public interface GPS {public Point getLocation();}2.建立源角色——汽车类/*** 汽车实体类** author XIEHEJUN**/public class Car {private String name;private double speed;public String getName() {return name;}public void setName(String name) {this.name name;}public double getSpeed() {return speed;}public void setSpeed(double speed) {this.speed speed;}Overridepublic String toString() {StringBuilder sbd new StringBuilder();sbd.append(车主名称为name );sbd.append(车速为speed );return sbd.toString();}}3.适配器角色——为汽车添加GPS的类/*** 为汽车添加GPS** author XIEHEJUN**/public class CarAddGPS extends Car implements GPS {Overridepublic Point getLocation() {Point point new Point();point.setLocation(super.getSpeed(), super.getSpeed());return point;}Overridepublic String toString() {StringBuilder sbd new StringBuilder();sbd.append(super.toString());sbd.append(,坐标为( getLocation().x , getLocation().y ));return sbd.toString();}}4.测试适配器类——main函数public static void main(String[] args) {System.out.println(************创建普通汽车类**********);Car car new Car();car.setName(李宏);car.setSpeed(60);System.out.println(car);System.out.println(************创建带有GPS的汽车类*******);CarAddGPS carGps new CarAddGPS();carGps.setName(李小华);carGps.setSpeed(60);System.out.println(carGps);}原文http://www.cnblogs.com/XHJT/p/3884785.html