JAVA核心类

1,CLASS类——表示运行时类或接口的信息。

  可通过class对象获取类名,父类等信息,并可通过class类来获取该类的属性,方法,构造方法,包等。

  获取class对象有如下常用方法:

  (已知类存在,已知类名) 直接类.class方法,返回该类的类型信息.class。其外,class.getCanonicalName()静态方法,返回class对象所表示的类型信息的全类名。

  (拥有一个对象的引用,改方法可用于确定对象的具体类型)对象.getClass(),返回该对象所属类的信息。

  (已知全类名,未知该类是否存在)Class.forName(className),利用Class<?> clazz=Class.forName(className)来加载该类。

   Java提供两种方式(显式和隐式)来实现类装载的动态型。隐式装载:使用new来定义一个实例变量时,如该类型还未加载到jvm中就自动装载。显式装载:程序员根据自己需求使用Class类的forName()方法和ClassLoader的loadClass()方法。

2,Constructor类——用来描述单个构造函数,Class对象提供了4个方法供编程者获取构造函数。

  class.getConstructor(Class parameterTypes)调用class类的getConstructor(..)方法,返回指定参数类型的构造方法的Constructor对象。获取的方法必须是共有的,否则会抛出java.lang.NoSuchMethodException异常。

  class.getDeclaredConstructor(Class parmeterTypes)放回指定参数类型的构造方法的Constructor对象,包括受保护和私有的构造方法。  

  class.getConstructors(),返回指定类的全部共有构造方法,并存储在一个Constructor的数组里,如果该类没有构造方法,则放回一个长度为0的Constructor数组。

  class.getDeclaredConstructor()返回指定类的全部构造方法,包括私有受保护。功能如上述方法类似。

3,Method——用于描述类的单个方法(不包括构造方法)。class提供4钟方法获取method类对象。

  介绍两种修饰方法的声明:final和native。final是为了不让子类重写该方法,该方法功能已确定,不能更改。代码执行时比编译器使用inline(行内)调用机制。直接将该方法主体插入到调用处(一方面这将提高效率但如果final方法过大或多出调用会使主体代码迅速膨胀,从而降低效率)。native方法是一个Java调用非Java代码的接口,其实现体在Java语言外面实现。

  getMethod(String name,Class...parameterTypes)获取指定名称指定参数类型的共有方法描述对象,包括本身和父类的方法。

  getMethods(),获取共有方法描述对象列表,包括本身和父类接口所有的共有方法描述对象。

  getDeclaredMethod(String name,Class...parameterTyoes)获取指定名称指定参数类型的方法描述对象(包括受保护和私有),包括本身和父类的方法。

  getDeclaredMethods(),获取方法描述对象列表,包括共有受保护私有,本身及父类接口。

4,Field——用于描述类的单个字段。(属性等)class类似地提供4种方法来获取字段描述对象。

  getField(String name),获取指定名称的公有属性,否则将抛出NoSuchFieldException异常。

  getFields(),获取公有属性描述对象列表。

  getDeclaredField(String name),获取指定名称的属性,包括私有受保护。

  getDeclaredFields(),放回class的所有属性。  

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值