`
- 浏览:
53697 次
- 性别:
- 来自:
上海
-
getCanonicalName和getSimpleName getName的区别与应用
接口:
-
packagecom.test;
-
-
publicinterfaceFruit{
-
-
}
一个实现类:
-
packagecom.test;
-
-
publicclassAppleimplementsFruit{
-
-
}
基本测试类:
-
packagecom.test;
-
-
importjava.util.ArrayList;
-
importjava.util.List;
-
-
publicclassTestName{
-
publicstaticvoidmain(String[]args){
-
Fruitapple=newApple();
-
System.out.println(apple.getClass().getCanonicalName());
-
System.out.println(apple.getClass().getSimpleName());
-
System.out.println(apple.getClass().getName());
-
-
Apple[]arrApple=newApple[]{};
-
System.out.println(arrApple.getClass().getCanonicalName());
-
System.out.println(arrApple.getClass().getSimpleName());
-
System.out.println(arrApple.getClass().getName());
-
-
System.out.println(String.class.getCanonicalName());
-
System.out.println(String.class.getSimpleName());
-
System.out.println(String.class.getName());
-
-
System.out.println(int.class.getCanonicalName());
-
System.out.println(int.class.getSimpleName());
-
System.out.println(int.class.getName());
-
-
Applea1=newApple();
-
Applea2=newApple();
-
List<Apple>appleList=newArrayList<Apple>();
-
appleList.add(a1);
-
appleList.add(a2);
-
System.out.println(appleList.getClass().getCanonicalName());
-
System.out.println(appleList.getClass().getSimpleName());
-
System.out.println(appleList.getClass().getName());
-
-
}
-
}
实际应用: hql的泛型查询
-
public<T>List<T>getRecords(Class<T>c,DatestartDate,DateendDate){
-
StringBuilderhql=newStringBuilder("selecttfrom");
-
hql.append(c.getCanonicalName());
-
hql.append("twheret.statTime>=:startTimeandt.statTime<:endTime");
-
-
Queryquery=sessionFactory.getCurrentSession().createQuery(hql.toString());
-
query.setParameter("startTime",startDate);
-
query.setParameter("endTime",endDate);
-
-
returnquery.list();
-
}
-
}
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
getName()和getSimpleName()的区别1
在Java编程语言中,`Class` 类是所有类的顶级抽象类,它提供了与类、接口、数组等相关的各种信息。`getSimpleName()` 是 `Class` 类的一个方法,用于获取类的简单名称,即不包括包名的部分。这个方法在很多场景下都...
ongbin.bean.User”); Method method=clazz.getMethod(“方法名”, 参数类型的 Class 对象); //调用方法,无返回值 method....在理解其原理和应用场景的基础上,适当使用反射可以极大地提升程序的灵活性和可扩展性。
在Android开发中,Activity是应用程序的基本构建块,它负责与用户进行交互。了解并管理Activity的生命周期对于优化应用性能和用户体验至关重要。`ActivityLifecycleCallback`是Android系统提供的一种机制,用于全局...
* ApplicationReadyEvent:在任何应用和command-line runner被调用的时候发送,它意味着应用可以接受请求了。 * ApplicationFailedEvent:在启动时有异常的时候发送。 2. 如何监听这些事件 监听这些事件可以通过两...
System.out.println("Before " + joinPoint.getTarget().getClass().getSimpleName() + "." + joinPoint.getSignature().getName()); } @After("execution(* *(..))") public void doAfter(JoinPoint joinPoint...
- `getName()`和`getSimpleName()`分别用于获取类的全名(包括包名)和简单名称(不包括包名)。 - `getMethod(String name, Class<?>... parameterTypes)`用于获取所有公共方法,包括父类继承的公共方法。 - `...
总结,Java反射机制为我们提供了强大的动态操作类和对象的能力,广泛应用于框架开发、插件系统、元数据处理、动态代理等诸多领域。熟练掌握反射技术,可以显著提高代码的灵活性和可扩展性,但同时也需要注意反射可能...
System.out.println("package " + c.getPackage().getName() + ";\n"); System.out.print(Modifier.toString(c.getModifiers())); System.out.print(" class " + c.getSimpleName()); System.out.print...
《OpenCV在Android Studio中的简单应用》 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了众多图像处理和计算机视觉的算法,适用于Android、iOS、Windows等多种平台。在Android...
Java 反射机制详解 Java 反射机制是 Java ...反射机制的应用非常广泛,例如在框架、工具、动态代理、AOP 等方面都有广泛的应用。 Java 反射机制是 Java 语言的一个强大功能,可以帮助开发者实现更多的功能和灵活性。
- `getName()`和`getSimpleName()`:获取类的完整名称和简单名称。 此外,`java.lang.reflect`包下的一些关键类,如`Field`、`Constructor`和`Method`,提供了对类的属性、构造器和方法的详细操作。例如,`Field`类...
- **获取类名**:通过`Class.getName()`,`getSimpleName()`或`getCanonicalName()`获取类的全名、简单名或规范名。 - **获取父类**:使用`getSuperclass()`获取父类的Class对象。 - **获取接口**:使用`...
- `Reflect.class.getName()`和`Reflect.class.getSimpleName()`分别返回类的全限定名和简单名称。 - `new Reflect().getClass().getName()`通过创建一个`Reflect`类的实例,然后调用`getClass()`方法获取其`Class`...
DAO是应用程序中的一个接口或抽象类,它提供了对数据存储的抽象,使得业务逻辑层可以不直接与数据库交互,而是通过DAO进行。这有助于解耦业务逻辑和数据访问逻辑,使得系统更加灵活,易于测试和维护。 自定义Dao时...
基于代理的经典 AOP 更适合于 Spring 早期版本的应用场景,而 Schema-based 的 AOP 和 @AspectJ 注解驱动的 AOP 更符合现代应用的需求,特别是在需要快速开发和维护的情况下。开发者可以根据实际项目需求选择合适的 ...
- 获取类的名称:`getName()`和`getSimpleName()` - 获取类的修饰符(public, private等):`getModifiers()` - 获取类的超类:`getSuperclass()` - 获取接口:`getInterfaces()` - 获取类的构造器:`...
### Java高级应用知识点详解 ...总结,Java高级应用包括自定义注解、反射机制、动态编译、字节码操作等多个方面,这些技术不仅能够提升程序的灵活性和扩展性,还能帮助开发者更好地理解和控制程序的底层行为。
在这个简单的使用例子中,我们将深入探讨如何使用`AnnotationMetadata`来解析类上的注解,这对于理解Spring的组件扫描和自动配置机制至关重要。 首先,`AnnotationMetadata`接口位于`org.springframework.core.type...
Java反射机制是Java编程语言中的一个强大特性,它允许程序在运行时检查和操作类、对象、方法和字段。在Java中,反射机制是通过`java.lang.Class`、`java.lang.reflect.Constructor`、`java.lang.reflect.Field`和`...