将一个类转换为另一个类的设计模式
我有一个名为GoogleWeather的类,我想将其转换为另一个CustomWeather类。
有没有可以帮助您转换类的设计模式?
回答:
需要做出一个关键决定:
您是否需要转换生成的对象以反映对源对象的将来更改?
如果您不需要这样的功能,那么最简单的方法是将实用程序类与静态方法一起使用,这些静态方法根据源对象的字段创建新对象,如其他答案所述。
另一方面,如果您需要转换后的对象来反映对源对象的更改,则可能需要使用一些适配器设计模式:
public class GoogleWeather { ...
public int getTemperatureCelcius() {
...
}
...
}
public interface CustomWeather {
...
public int getTemperatureKelvin();
...
}
public class GoogleWeatherAdapter implements CustomWeather {
private GoogleWeather weather;
...
public int getTemperatureKelvin() {
return this.weather.getTemperatureCelcius() + 273;
}
...
}
以上是 将一个类转换为另一个类的设计模式 的全部内容, 来源链接: utcz.com/qa/406680.html