getCanonicalName和getSimpleName getName的区别与应用
2012-11-06 10:54
337 查看
接口:
Java代码
package com.test;
public interface Fruit {
}
一个实现类:
Java代码
package com.test;
public class Apple implements Fruit {
}
基本测试类:
Java代码
package com.test;
import java.util.ArrayList;
import java.util.List;
public class TestName {
public static void main(String[] args) {
Fruit apple=new Apple();
System.out.println(apple.getClass().getCanonicalName());//返回com.test.Apple
System.out.println(apple.getClass().getSimpleName());//Apple
System.out.println(apple.getClass().getName());//返回com.test.Apple
Apple[] arrApple=new Apple[]{};
System.out.println(arrApple.getClass().getCanonicalName());//返回com.test.Apple[]
System.out.println(arrApple.getClass().getSimpleName());//返回Apple[]
System.out.println(arrApple.getClass().getName());//返回[Lcom.test.Apple;
System.out.println(String.class.getCanonicalName());//返回java.lang.String
System.out.println(String.class.getSimpleName());//返回String
System.out.println(String.class.getName());//返回java.lang.String
System.out.println(int.class.getCanonicalName());//返回int
System.out.println(int.class.getSimpleName());//返回int
System.out.println(int.class.getName());//返回int
Apple a1=new Apple();
Apple a2=new Apple();
List<Apple> appleList=new ArrayList<Apple>();
appleList.add(a1);
appleList.add(a2);
System.out.println(appleList.getClass().getCanonicalName());//返回java.util.ArrayList
System.out.println(appleList.getClass().getSimpleName());//返回ArrayList
System.out.println(appleList.getClass().getName());//返回java.util.ArrayList
}
}
实际应用: hql的泛型查询
Java代码
public <T> List<T> getRecords(Class<T> c,Date startDate,Date endDate){
StringBuilder hql = new StringBuilder("select t from ");
hql.append(c.getCanonicalName());
hql.append(" t where t.statTime>=:startTime and t.statTime<:endTime ");
Query query = sessionFactory.getCurrentSession().createQuery(hql.toString());
query.setParameter("startTime", startDate);
query.setParameter("endTime", endDate);
return query.list();
}
}
Java代码
package com.test;
public interface Fruit {
}
一个实现类:
Java代码
package com.test;
public class Apple implements Fruit {
}
基本测试类:
Java代码
package com.test;
import java.util.ArrayList;
import java.util.List;
public class TestName {
public static void main(String[] args) {
Fruit apple=new Apple();
System.out.println(apple.getClass().getCanonicalName());//返回com.test.Apple
System.out.println(apple.getClass().getSimpleName());//Apple
System.out.println(apple.getClass().getName());//返回com.test.Apple
Apple[] arrApple=new Apple[]{};
System.out.println(arrApple.getClass().getCanonicalName());//返回com.test.Apple[]
System.out.println(arrApple.getClass().getSimpleName());//返回Apple[]
System.out.println(arrApple.getClass().getName());//返回[Lcom.test.Apple;
System.out.println(String.class.getCanonicalName());//返回java.lang.String
System.out.println(String.class.getSimpleName());//返回String
System.out.println(String.class.getName());//返回java.lang.String
System.out.println(int.class.getCanonicalName());//返回int
System.out.println(int.class.getSimpleName());//返回int
System.out.println(int.class.getName());//返回int
Apple a1=new Apple();
Apple a2=new Apple();
List<Apple> appleList=new ArrayList<Apple>();
appleList.add(a1);
appleList.add(a2);
System.out.println(appleList.getClass().getCanonicalName());//返回java.util.ArrayList
System.out.println(appleList.getClass().getSimpleName());//返回ArrayList
System.out.println(appleList.getClass().getName());//返回java.util.ArrayList
}
}
实际应用: hql的泛型查询
Java代码
public <T> List<T> getRecords(Class<T> c,Date startDate,Date endDate){
StringBuilder hql = new StringBuilder("select t from ");
hql.append(c.getCanonicalName());
hql.append(" t where t.statTime>=:startTime and t.statTime<:endTime ");
Query query = sessionFactory.getCurrentSession().createQuery(hql.toString());
query.setParameter("startTime", startDate);
query.setParameter("endTime", endDate);
return query.list();
}
}
相关文章推荐
- Java getCanonicalName和getSimpleName getName的区别与应用
- getCanonicalName和getSimpleName getName的区别与应用
- Class的getCanonicalName和getSimpleName getName的区别与应用
- getCanonicalName和getSimpleName getName的区别与应用
- getCanonicalName getSimpleName getName 区别与应用
- getCanonicalName getSimpleName getName 区别与应用
- getCanonicalName和getSimpleName getName的区别与应用
- getCanonicalName和getSimpleName getName的区别与应用
- java getCanonicalName getSimpleName和getName的区别和用法
- java getCanonicalName getSimpleName和getName的区别和用法
- java getCanonicalName() getSimpleName() getName()区别
- getSimpleName,getCanonicalName和getName获取类名的区别
- java getSimpleName getCanonicalName 和getName的区别和用法
- getClass()与getName()和getSimpleName()的区别
- getClass()与getSimpleName()的区别
- 一目了然解释getName()、getCanonicalName()和getSimpleName()的异同
- JS中getElementById()、getElementsByName()、getElementsByTagName() 的区别和应用
- Class.getName和Class.getCanonicalName的区别
- 简单比较 getName()、getCanonicalName()、getSimpleName() 的异同
- JS中getElementById()、getElementsByName()、getElementsByTagName()_的区别和应用