JAVA的反射机制简介(上)
来源:互联网 发布:哪里有专业的java培训 编辑:程序博客网 时间:2024/06/06 10:57
提供动态地生成代理类和类实例的静态方法。
Boolean var1 = true;
Class<?> classType2 = var1.getClass();
System.out.println(classType2);
输出:class java.lang.Boolean
运用.class 语法Class<?> classType4 = Boolean.class;
System.out.println(classType4);
输出:class java.lang.Boolean
运用static method Class.forName()Class<?> classType5 = Class.forName("java.lang.Boolean");
System.out.println(classType5);
输出:class java.lang.Boolean
运用primitive wrapper classes的TYPE 语法
这里返回的是原生类型,和Boolean.class返回的不同
Class<?> classType3 = Boolean.TYPE;
System.out.println(classType3);
输出:boolean
返回 Field 对象的一个数组,这些对象反映此 Class 对象所表示的类或接口(不包括父亲类和implements接口)所声明的所有字段,包括修饰符为public,protected,private及默认(包)的字段。
返回一个 Method 对象,它反映此 Class 对象所表示的类或接口和(包括父亲类及父亲类implements的接口和自己实现的接口)的指定公共(public)成员方法
public Method[] getMethods()返回一个包含某些 Method 对象的数组,这些对象反映此 Class 对象所表示的类或接口(包括那些由该类或接口声明的以及从超类和超接口继承的那些的类或接口和自己实现的接口)的公共(public) 成员方法
public Method getDeclaredMethod(Stringname,Class<?>... parameterTypes)
返回一个 Method 对象,该对象反映此 Class 对象所表示的类或接口的(不包括父亲类和父亲类implements的接口,但包括自己实现的接口)指定已声明方法,,包括修饰符为public,protected,private及默认包级的方法
public Method[] getDeclaredMethods()返回 Method 对象的一个数组,这些对象反映此 Class 对象表示的类或接口(不包括父亲类和父亲类implements的接口,但包括自己实现的接口)声明的所有方法,包括公共、保护、默认(包)访问和私有方法,但不包括继承的方法
返回一个 Constructor 对象,它反映此 Class 对象所表示的类的指定公共(public)构造方法
public Constructor<?>[] getConstructors()返回一个包含某些 Constructor 对象的数组,这些对象反映此 Class 对象所表示的类的所有公共(public)构造方法
public Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes)
返回一个 Constructor 对象,该对象反映此 Class 对象所表示的类或接口的指定构造方法
public Constructor<?>[] getDeclaredConstructors()
返回 Constructor 对象的一个数组,这些对象反映此 Class 对象表示的类声明的所有构造方法。它包括所有公共、保护、默认(包)访问和私有构造方法
1、调用类的Class对象的newInstance方法,该方法会调用对象的默认构造器,如果没有默认构造器,会调用失败.
Class<?> classType = ExtendType.class;
Object inst = classType.newInstance();
System.out.println(inst);
输出:
Type:Default Constructor
ExtendType:Default Constructor
com.quincy.ExtendType@d80be3
2、调用默认Constructor对象的newInstance方法
Class<?> classType = ExtendType.class;
Constructor<?> constructor1 = classType.getConstructor();
Object inst = constructor1.newInstance();
System.out.println(inst);
输出:
Type:Default Constructor
ExtendType:Default Constructor
com.quincy.ExtendType@1006d75
调用带参数ctor3、调用带参数Constructor对象的newInstance方法
Constructor<?> constructor2 =
classType.getDeclaredConstructor(int.class, String.class);
Object inst = constructor2.newInstance(1, "123");
System.out.println(inst);
输出:
Type:Default Constructor
ExtendType:Constructor with parameters
com.quincy.ExtendType@15e83f9
static boolean
isAbstract(int mod)
如果整数参数包括 abstract 修饰符,则返回 true,否则返回 false。
static boolean
isFinal(int mod)
如果整数参数包括 final 修饰符,则返回 true,否则返回 false。
static boolean
isInterface(int mod)
如果整数参数包括 interface 修饰符,则返回 true,否则返回 false。
static boolean
isNative(int mod)
如果整数参数包括 native 修饰符,则返回 true,否则返回 false。
static boolean
isPrivate(int mod)
如果整数参数包括 private 修饰符,则返回 true,否则返回 false。
static boolean
isProtected(int mod)
如果整数参数包括 protected 修饰符,则返回 true,否则返回 false。
static boolean
isPublic(int mod)
如果整数参数包括 public 修饰符,则返回 true,否则返回 false。
static boolean
isStatic(int mod)
如果整数参数包括 static 修饰符,则返回 true,否则返回 false。
static boolean
isStrict(int mod)
如果整数参数包括 strictfp 修饰符,则返回 true,否则返回 false。
static boolean
isSynchronized(int mod)
如果整数参数包括 synchronized 修饰符,则返回 true,否则返回 false。
static boolean
isTransient(int mod)
如果整数参数包括 transient 修饰符,则返回 true,否则返回 false。
static boolean
isVolatile(int mod)
如果整数参数包括 volatile 修饰符,则返回 true,否则返回 false。
static String
toString(int mod)
返回描述指定修饰符中的访问修饰符标志的字符串。
- JAVA的反射机制简介(上)
- JAVA的反射机制简介(下)
- Java反射机制的简介
- java 反射机制简介
- Java反射机制简介
- java反射机制简介
- Java反射机制简介 .
- java反射机制简介
- java反射机制简介
- 简介java反射机制
- Java反射机制简介
- Java反射机制简介
- Java 反射机制(上)
- Java反射基础机制简介
- Java中反射机制简介
- java反射机制理解-上
- Java提高 - Java反射机制简介
- java反射机制剖析(一)—简介
- 【最大流+dinic+二分枚举】北大 poj 3189 Steady Cow Assignment
- POJ 2965
- 【ASP.NET】.NET牛人应该知道些什么
- usaco 1.2.3 name that number
- java 面试题
- JAVA的反射机制简介(上)
- 2011年中国大陆十佳IC设计公司
- JAVA的反射机制简介(下)
- poj3270
- htc hd如何刷新官方升级包--转symen
- 最近做了个地图软件,写一些经验和心得,以及一些问题
- 《Ruby从入门到精通》文档编写、错误处理、调试和测试 文件和数据库
- 网页设计灵感
- EditText属性简介