java - 子类之间转换的设计模式fu

标签 java design-patterns

我们正在编写一个类层次结构,用于实现表示语言的各种方式。有底座LanguageCode具有多个子类的类,包括 ISO1LanguageCode对于 ISO 639-1 codes (例如:'en'),ISO2LanguageCode对于 ISO 639-2 codes (例如:“eng”)和 HumanReadableLanguageCode (例如:“英语”)。任何时候,我们都需要能够在任意两个子类之间进行转换。我们可以在这里使用一些设计模式魔法来提供帮助吗?

注意:

我们的第一个想法是标准化基类,并让每个子类在其自身与基类上的标准之间编写一个转换例程。这样,就可以在 ISO2LanguageCode 之间进行转换。和HumanReadableLanguageCode ,使用LanguageCode作为一座桥梁。

最佳答案

只有一组语言。每种语言都有一个-1代码、一个无用的-2代码和一个-3代码。以及一个人类可读的名称。因此,创建一个带有访问器的枚举来返回不同的代码,以及多个查找静态方法。

关于java - 子类之间转换的设计模式fu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9626405/

相关文章:

android - 如何在 ViewPager 中构建嵌套 fragment ?

java - 设计模式 - 从不同类型的数据源创建对象

java - Eclipse 无法使用 sudo 运行

java - 如果此注释未写入字节码,如何在运行时访问它?

java - Javers - 在单个查询中跟踪子对象相对于父对象的更改

design-patterns - 工厂与原型(prototype) - 什么时候使用?

java - 搜索历史和过滤器的面向对象设计

java - java中的slugify url

java - RxJava 中 doOnNext(...) 的目的是什么

c# - 插件架构模式