package com.sou.reflection.classpkg;
import org.junit.Test;
import java.lang.reflect.Method;
/**
* 反射获取Class的三种方式
* 1)Class.forName()
* 2) obj.getClass
* 3) class.class
*/
public class ReflectionApp {
//Class.forName()
@Test
public void test01() throws Exception {
Class<?> clazz = Class.forName("java.lang.Object");
//获取所有的方法
Method[] methods = clazz.getDeclaredMethods();
for (Method method : methods) {
System.out.println(method);
}
System.out.println("---------------");
//获取标识为Public的方法
Method[] methods1 = clazz.getMethods();
for (Method method : methods1) {
System.out.println(method);
}
}
//obj.getClass
@Test
public void test02() {
String name = "allen";
Class<?> clazz = name.getClass();
Method[] methods = clazz.getMethods();
for (Method method : methods) {
System.out.println(method);
}
}
//class.class
@Test
public void test03() {
System.out.println(Integer.class);
System.out.println(Integer.TYPE);
}
}
Java反射获取Class的三种方式
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 目录java获取类对象(class)的三种方法三种方法总结1.通过实例对象获取 实例对象.getClass()2....
- 获取Class实例 第三种使用最多,框架中大量使用; 九大内置的Class实例 思考一个问题:在前面讲述了三种获取...