package my.reflection.test;  
import java.lang.reflect.Modifier;  
import static java.lang.System.out;

public class ClassTest {  
	public static void main(String[] args) {  

		String str="abcde";  
		Class cls=str.getClass();  

		//获取该对象所属于的包  
		Package pack=cls.getPackage();  
		String packName=pack.getName();  
		out.println("包名："+packName);  

		//获取对象所属类的修饰符  
		int flag=cls.getModifiers();  
		String modiferName=Modifier.toString(flag);  
		out.println("类的修饰符："+modiferName);  
		//判断是否接口  
		boolean bool=Modifier.isInterface(flag);  
		out.println("该Class是接口吗?"+bool);  

		//返回类的名字  
		String classname=cls.getName();  
		out.println("该Class所代表对象的完整的类名是："+classname);  

		//返回父类的Class的名字  
		Class supClass=cls.getSuperclass();  
		String supClassName=supClass.getName();  
		out.println("父类的Class的名称："+supClassName);  

		//返回该Class所代表的对象实现的接口的Class的数组  
		Class[] iterClass=cls.getInterfaces();  
		for(int i=0;i<iterClass.length;i++){  
			Class classType=iterClass[i];  
			out.println(classname+"类所实现的接口："+classType);  
		}  
	}  
}  
