Java如何将对象转换为类?

标签 java typeconverter

我的代码是:

public static Object mylang;

public static class lang_eng {
        public static final String x="Refreshing..."; 
}
public static class lang_de {
        public static final String x="Refreshing..."; 
}

...

   if (LANG.equals("1")) {
        mylang=(lang_eng)new Object();
    } else {
        mylang=(lang_de)new Object();
    }

但是当我引用 mylang.x 时,我得到:“x 无法解析或不是字段”

这个问题有什么解决办法吗?

最佳答案

这不是面向对象编程的工作方式。

如果您想要 LangEng(不是 Java 中的标准命名约定使用 CamelCase,而不是下划线分隔符),那么您必须使用 new LangEng() 实例化它。但即使这样,您也无法访问 x

在这种情况下,您可以做的是使用方法 getX() 定义一个接口(interface),并让两种语言都实现它。然后你就可以拥有Language mylang

而且 - 对于 i18n 使用这种方法并不是一个好主意。更好用java.util.ResourceBundle

关于Java如何将对象转换为类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4244943/

相关文章:

c - 如何在c中将char数组元素转换为int以及其他方式?

python - 简化函数

c# - 将包含属性的上下文传递给 TypeConverter

java - 无法在类中的两个数组之间使用相等运算符来模仿 ArrayList 的工作原理

java - 将 META-INF 文件复制到 gradle 中的 jar

java - Java 中不带焦点的情况下监听输入

c# - 绑定(bind)到 ASP.NET GridView 时的 TypeConverter

java - 单击时如何从微调器下拉列表中创建第二个 Activity ?

java - 将 HTTPS 添加到 Google App Engine 上的自定义域(并保持 HTTP 正常工作)

c#如何实现类型转换器