变量类名Java

时间:2010-10-14 19:28:04

标签: java class object

我正在创建一个带有字符串和类的新对象。假设我有一个名为“Quiz.java”的类。什么有效:

headerItem = new TreeFieldItem(new QuizMenuItem(key, Quiz.class));

我的“值”字符串返回“测验”。我如何使这项工作?

 private ArrayList<TreeFieldItem> getListItems() {

    ArrayList<TreeFieldItem> arrayList = new ArrayList<TreeFieldItem>(14);

    TreeFieldItem headerItem    = null;

    Map<String, String> map = getMenuItems(R.xml.xml_quiz_menu);

    for (Entry<String, String> entry : map.entrySet()) {

        String key = entry.getKey();
        String value = entry.getValue();

        **headerItem = new TreeFieldItem(new QuizMenuItem(key, value.class));**
        arrayList.add(headerItem);

    }

    return arrayList;

}

1 个答案:

答案 0 :(得分:4)

使用Class.forName(String)

http://mindprod.com/jgloss/classforname.html

headerItem = new TreeFieldItem(new QuizMenuItem(key, Class.forName(value));

您需要确保值字符串是类的完全限定名称(包括包)。