Java 如何将泛型类作为param传递给Intent构造函数

Java 如何将泛型类作为param传递给Intent构造函数,java,android,generics,Java,Android,Generics,我的android应用程序中有这种通用活动 public class NavegadorActivity<T> extends Activity { .... ... } 公共类NavegadorActivity扩展活动{ .... ... } 我试着这样称呼它 Intent intent = new Intent(v.getContext(), NavegadorActivity<Clientes>.class); Intent Intent=newin

我的android应用程序中有这种通用活动

public class NavegadorActivity<T> extends Activity {

    ....
...
}
公共类NavegadorActivity扩展活动{
....
...
}
我试着这样称呼它

Intent intent = new Intent(v.getContext(), NavegadorActivity<Clientes>.class);
Intent Intent=newintent(v.getContext(),NavegadorActivity.class);
但是,Intent构造函数不接受泛型类作为param。然后我尝试了这个代码

Class<NavegadorActivity<Clientes>> NavClientes =  NavegadorActivity.class;

Intent intent = new Intent(v.getContext(), NavClientes.class);
Class NavClientes=NavegadorActivity.Class;
Intent Intent=新的Intent(v.getContext(),NavClientes.class);
这也不行

也不是这个

Class<NavegadorActivity<Clientes>> NavClientes =  NavegadorActivity<Clientes>.class;

Intent intent = new Intent(v.getContext(), NavClientes.class);
Class NavClientes=NavegadorActivity.Class;
Intent Intent=新的Intent(v.getContext(),NavClientes.class);
有人知道如何将泛型类作为param传递给Intent构造函数吗

谢谢你,你怎么了

Intent intent = new Intent(v.getContext(), NavegadorActivity.class);

我不相信android Intent系统支持
通用的
活动,你不应该自己创建一个活动对象。我建议向活动中添加一个表示通用功能的内部类,并通过

intent.putExtraString("class", yourClass.getName());
并通过

Class<?> myGeneric = Class.forName(intent.getStringExtra("class", "java.Object");
Class myGeneric=Class.forName(intent.getStringExtra(“Class”、“java.Object”);

出于好奇,您为什么要使用泛型活动?这与
意图
构造函数没有任何关系;问题是您的语法是错误的。
NavegadorActivity.class
不是有效的语法(因为您不能将泛型与
.class
组合),而
NavClientes.class
也不是有效的语法(因为
NavClients
是一个变量名,而不是类型名)。(您尝试执行的操作在概念上也存在问题。如果
stringList
是一个
ArrayList
intList
是一个
ArrayList
,那么
stringList.getClass()
intList.getClass()
将与
的实例相同。您不能使用
传递泛型类型信息,因为该信息在运行时会被擦除。)@Me先生,我正在尝试在NavegadorActivity中创建一个datagrid,它显示NavegadorActivity的构造函数将如何处理T类的对象?没有必要显示构造函数,因为它是一个泛型类,需要知道什么是类T@Heberfa:您询问如何传递表示
NavegadorActivity
对象ode>到
Intent
构造函数。在运行时只有一个
NavegadorActivity
类对象,可以使用
NavegadorActivity.class
访问它。这个答案回答了您的问题。NavegadorActivity的构造函数与问题无关。在NavegadorActivity中,我还需要一个问题声明另一个泛型对象DbAdapter,但myGeneric是一个类,我无法再次将其转换为类型。