java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType这个异常怎么解决 谁能帮我一下

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType这个异常怎么解决 谁能帮我一下相关的知识,希望对你有一定的参考价值。

import 。。。
public class addminBlogHibernatebak<T,PK extends Serializable> implements AdminBlogDao<T, PK>

private Class<T> clazz;
public addminBlogHibernatebak()
clazz=(Class<T>)((ParameterizedType)getClass ().g etGenericSuperclas()).getActualTypeArguments()[0];

public void delete(T entity)
Session session=HibernateSessionFactoryUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.delete(entity);



public void update(T entity)
Session session=HibernateSessionFactoryUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.update(entity);



问题出在构造方法上 每次运行程序时就出现上面的异常.谢谢大家啊 都是热心人
我感觉是泛型我使用的方法不对 希望大家能在这方面帮小弟一下

构造方法写得没错,是泛型用错了,有两种解决方案。

1、再写一个子类继承这个类,子类可以没有任何属性和方法,但必须指明泛型类型,然后使用子类创建对象。

2、写一个含有Class<T>类型的构造方法,在使用该类创建对象时给出具体类型。

软件包 java.lang.reflect 的描述。

提供类和接口,以获取关于类和对象的反射信息。在安全限制内,反射允许编程访问关于加载类的字段、方法和构造方法的信息,并允许使用反射字段、方法和构造方法对对象上的基本对等项进行操作。

如果必需的ReflectPermission可用,则AccessibleObject允许抑制访问检查。

参考技术A 构造方法写的没错,是泛型用错了,有两种解决方案,1.再写一个子类继承这个类,子类可以没有任何属性和方法,但必须指明泛型类型,然后使用子类创建对象 2.写一个含有Class<T>类型的构造方法,在使用该类创建对象时给出具体类型 参考技术B 有Class A 跟 Class B
A跟B没有任何关系
你把A塞给B就抛这个异常了
参考技术C 转换异常了。。。上面说的都有道理!!! 参考技术D 就是说你拿到的是String变量,你把它强制转换成Date型的所以出错
你可以用Format类或者自己分析carno的格式转换成Date类型
比方carno="2001/01/01";
就可以String[] s = carno.split("/");
new Date(Integer.parseInt(s[0]), Integer.parseInt(s[1]), Integer.parseInt(s[2]));之类的处理

以上是关于java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType这个异常怎么解决 谁能帮我一下的主要内容,如果未能解决你的问题,请参考以下文章

Exception:java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.Paramete

he expression ‘userViewModel.getUserName()‘ cannot be inverted, so it cannot be used in a tw

xcodeproj cannot be opened because the project file cannot be parsed.

SVN cannot be opened because the project file cannot be parsed.xcode有几种可能错

cannot be opened because the project file cannot be parsed.xcode有几种可能错

The import java.util cannot be resolved The import javax.servlet cannot be resolved