Java Class类的一些总结

文笔不好这次就不写太多字了,直接贴代码,上半部有注释
package red.sea.daelly.test;

public class Main {

	/**
	 * Class类继承自Object
	 * 
	 * Class类的获取方式:
	 * 1)、Class的静态方法forName  Class.forName(className);
	 * 2)、类的class属性     Test.class;
	 * 3)、类实例的getClass方法    Test test; test.getClass();
	 * 
	 * Class有一个私有的构造函数,我们不能实例化一个Class对象,Class对象的实例化由jvm完成,在jvm加载这个类的时候完成。
	 * 
	 * 可以将Class看做一个普通的“对jvm里加载的类”的抽象的普通类;他有很多的get方法,获取和这个类定义相关的一些信息;
	 * 
	 * Interface的这个抽象也是Class类
	 * 
	 * jvm管理的每个类都是独一无二的Class对象,所以可以用“==”来比较两个类实例如:
	 * 	  if(e.getClass()==Test.class)//这是合法的比较
	 * 一个小技巧:
	 *    Object obj = Class.forName("red.sea.daelly.test.Test").newInstance();//动态通过类型创建一个类的实例对象
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		Class<?> classz = Test.class;
		System.out.println("classz.getCanonicalName():"+classz.getCanonicalName());
		System.out.println("classz.getModifiers():"+classz.getModifiers());
		System.out.println("classz.getName():"+classz.getName());
		System.out.println("classz.getSimpleName():"+classz.getSimpleName());
		System.out.println("classz.getAnnotations():"+classz.getAnnotations());
		System.out.println("classz.getClass():"+classz.getClass());
		System.out.println("classz.getClasses():"+classz.getClasses());
		System.out.println("classz.getClassLoader():"+classz.getClassLoader());
		System.out.println("classz.getComponentType():"+classz.getComponentType());
		System.out.println("classz.getConstructors():"+classz.getConstructors());
		System.out.println("classz.getDeclaredAnnotations():"+classz.getDeclaredAnnotations());
		System.out.println("classz.getDeclaredClasses():"+classz.getDeclaredClasses());
		System.out.println("classz.getDeclaredConstructors():"+classz.getDeclaredConstructors());
		System.out.println("classz.getDeclaredFields():"+classz.getDeclaredFields());
		System.out.println("classz.getDeclaredMethods():"+classz.getDeclaredMethods());
		System.out.println("classz.getDeclaringClass():"+classz.getDeclaringClass());
		System.out.println("classz.getEnclosingClass():"+classz.getEnclosingClass());
		System.out.println("classz.getMethods():"+classz.getMethods());
		System.out.println("classz.getFields():"+classz.getFields());
		System.out.println("classz.getInterfaces():"+classz.getInterfaces());
		System.out.println("classz.getPackage():"+classz.getPackage());
		System.out.println("classz.getSuperclass():"+classz.getSuperclass());
		System.out.println("classz.getGenericInterfaces():"+classz.getGenericInterfaces());
		System.out.println("classz.getGenericSuperclass():"+classz.getGenericSuperclass());
		System.out.println(classz);
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值