第一章 面向对象
第二章 异常
第三章 数组
第四章 常用类
第五章 集合
第六章 IO流
第七章 线程
第八章 反射
第九章 Socket编程

java反射构造方法

 

package com.wkcto.chapter08.demo01;

import java.lang.reflect.Constructor;
import java.lang.reflect.Modifier;

/**
 * 反射构造方法
 * 	Constructor
 * 		getConstructor(Class<?>... parameterTypes)	指定参数列表的公共构造方法
 * 		class1.getDeclaredConstructors()		返回所有构造方法
 * 		
 * @author 蛙课网
 *
 */
public class Test05 {

	public static void main(String[] args) {
		//1)创建Class对象
		Class<?> class1 = Integer.class;
//		Class<?> class1 = String.class;
		
		//2)反射构造方法
//		class1.getConstructor(parameterTypes)
		Constructor<?>[] declaredConstructors = class1.getDeclaredConstructors();
		for (Constructor<?> constructor : declaredConstructors) {
			//构造方法修饰符
			System.out.print( Modifier.toString(constructor.getModifiers()) + " ");
			//构造方法名
//			System.out.print( constructor.getName() ); 	//构造方法名是完整类名
			System.out.print( class1.getSimpleName() );
			//构造方法参数类型列表
			System.out.print("(");
			Class<?>[] parameterTypes = constructor.getParameterTypes();
			for(int i = 0 ; i<parameterTypes.length ; i++){
				System.out.print( parameterTypes[i].getSimpleName());
				//使用逗号分隔
				if (i < parameterTypes.length - 1) {
					System.out.print(",");
				}
			}
			System.out.println(");");
		}
	}

}

 

全部教程