浅谈java中定义泛型类和定义泛型方法的写法
1、方法中的泛型
publicstatic<T>TbackSerializable(Class<T>clazz,Stringpath,StringfileName){ FileInputStreamfis=null; ObjectInputStreamois=null; Objectobj=null; try{ fis=newFileInputStream(path+fileName); ois=newObjectInputStream(fis); obj=ois.readObject(); }catch(FileNotFoundExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(ClassNotFoundExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }finally{ try{ if(fis!=null)fis.close(); if(ois!=null)ois.close(); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } return(T)obj; }
2、定义泛型类
publicclassPageHibernateCallback<T>implementsHibernateCallback<List<T>>{ privateStringhql; privateObject[]params; privateintstartIndex; privateintpageSize; publicPageHibernateCallback(Stringhql,Object[]params, intstartIndex,intpageSize){ super(); this.hql=hql; this.params=params; this.startIndex=startIndex; this.pageSize=pageSize; } publicList<T>doInHibernate(Sessionsession)throwsHibernateException, SQLException{ //1执行hql语句 Queryquery=session.createQuery(hql); //2实际参数 if(params!=null){ for(inti=0;i<params.length;i++){ query.setParameter(i,params[i]); } } //3分页 query.setFirstResult(startIndex); query.setMaxResults(pageSize); returnquery.list(); } }
以上这篇浅谈java中定义泛型类和定义泛型方法的写法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。