繁体   English   中英

类型类是原始类型。 对泛型类型Class的引用 <T> 应该参数化

[英]Type Class is a raw type. References to generic type Class<T> should be parameterized

类activityItems工作正常,但出现警告“类型类是原始类型。对泛型类型类的引用应参数化”。 如何解决?

这是我的代码:

public class MainActivity extends ListActivity {

    String classes[] = { "AccountActivity", "CountsActivity", "" };
    String listItems[] = { "Accounts", "Counts", "temp" };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        View layout = findViewById(R.id.container);
        Drawable background = layout.getBackground();
        background.setAlpha(110);

        setListAdapter(new ArrayAdapter<String>(this, 
                android.R.layout.simple_list_item_1, listItems));

    }

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        String item = classes[position];
        try {
            Class activityItems = Class.forName("com.arbaz.hk." + item);
            Intent intent = new Intent(this, activityItems);
            startActivity(intent);
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

我认为这可能只是更改此情况的一种情况:

Class activityItems = Class.forName("com.arbaz.hk." + item);

至:

Class<?> activityItems = Class.forName("com.arbaz.hk." + item);

你还没有说这样的话,你知道什么TClass<T>的,但是你证明你至少知道它一个通用型,所以编译器不会删除仿制药的所有痕迹从签名等,否则。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM