java之Class
来源:互联网 发布:广电网络 股票 编辑:程序博客网 时间:2024/06/05 12:39
通过Class,可以得到一个类的一些属性。
测试代码:
package com.clazz;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.Calendar;import java.util.HashMap;import junit.framework.TestCase;public class TestClass extends TestCase {public void testgetDeclaredMethods() {Method[] methods = String.class.getDeclaredMethods();for (Method m : methods) {System.out.println(m);}}public void testgetMethods() {Method[] methods = String.class.getMethods();for (Method m : methods) {System.out.println(m);}}public void testgetDeclaredConstructors() {Constructor<?>[] cons = String.class.getDeclaredConstructors();for (Constructor<?> con : cons) {System.out.println(con);}}public void testgetConstructors() {Constructor<?>[] cons = String.class.getConstructors();for (Constructor<?> con : cons) {System.out.println(con);}}public void testgetClasses() {Class<?>[] classes = HashMap.class.getClasses();for (Class<?> clazz : classes) {System.out.println(clazz);}}public void testgetDeclaredClasses() {Class<?>[] classes = HashMap.class.getDeclaredClasses();for (Class<?> clazz : classes) {System.out.println(clazz);}}public void testgetFields() {Field[] fields = Calendar.class.getFields();for (Field field : fields) {System.out.println(field);}}public void testgetDeclaredFields() {Field[] fields = Calendar.class.getDeclaredFields();for (Field field : fields) {System.out.println(field);}}}
getDeclaredMethods和getMethods的区别:
getDeclaredMethods得到该类所有的方法,除去父类的。
getMethods得到该类及其父类所有的public方法。
getDeclaredConstructors和getConstructors的区别:
getDeclaredConstructors得到该类所有的构造方法。
getConstructors得到该类所有的public的构造方法。
getClasses和getDeclaredClasses的区别:
getClasses得到该类及其父类所有的public的内部类。
getDeclaredClasses得到该类所有的内部类,除去父类的。
getFields和getDeclaredFields的区别:
getFields得到该类及其父类所有的public的成员变量。
getDeclaredFields得到该类所有的成员变量,除去父类的。
0 0
- java之Class
- JAVA之CLASS、ClassLoader
- Java虚拟机之Class文件
- java之-forName和Class
- Java反射之Class类
- Java基础知识之Class结构
- Java 反射之Class用法
- java反射 之Class类
- question_004-JAVA之class-static
- java反射之Class类
- 【Java】反射之Class.forName()
- java之public class和class声明区别详解
- java之public class和class声明区别详解
- java之public class和class声…
- Java之public class和class声明区别
- Java反射之Method Class.getMethod(String name, Class<?>... parameterTypes)
- java 反射机制 之 Class.forName() 获取class的对象
- java class 文件解析 之 class 常量池 (一)
- Sql server left join,right join和inner join的比较
- 虚函数
- cocos2d-x - loading加载动画
- 最长连续片段
- 绘制 UITableViewCell
- java之Class
- 五个男人30年在同一位置拍摄相同合影,岁月不饶人啊
- 看不到的利益是商机
- 学习笔记 SimpleDateFormat
- CentOS 5.8 中源码安装apache2.4.7和php5.4.23
- Pat(Advanced Level)Practice--1004(Counting Leaves)
- vc自定义消息的发送与接收的方法实现
- 黑马程序员-IO流04
- 初恋的酸甜苦涩