适配器模式适应在这种场景:客户端需要调用类的方法,但这个类没有这个方法,可以把这个类放到适配器类中加工一下,让适配器具有这有这个方法,这个适配器方法来做类方法的封装。比如,客户端想调用类A的watch_tv方法,但类A中只有turn_on_power(),turn_on_tv()方法。因此可以把类A放入适配器类中,让适配器具有watch_tv方法,并且这个watch_tv方法是turn_on_power()和turn_on_tv()方法的封装。
代码具体实现:
客户端类: Client--方法 show_time
被调用的类: Electronic_clock, 方法show_accurate_time
Mechanical_clock, 方法every_wind(每天上发条), periodic_calibration_time(定期校准时间), show_time