Java高级特性之反射(流行框架都用到)

一、基本知识点:

      1、反射的概念和应用场合;

      2、如何应用反射获取类的信息(反射的入口);

      3、通过反射,则可以运行时生成对象实例、运行期间调用方法、运行时更改属性值;

      4、如何利用反射来动态创建和访问数组。

二、知识点导入:(java是动态语言吗?)

      通常情况下,java在运行时是不能改变程序结构和变量类型,从这一点来看,java不是动态语言(和C++一样);

     但是,java有一个非常突出的动态相关机制:反射。

     通过反射,java可以于运行时加载、探知和使用编译期间完全未知的类,生成其对象实体,调用其方法和对属性设置。所以,从这一点来看,java是一个半动态的语言。

三、java语言反射机制概述:

     1、重要性: 反射机制是构建框架技术的基础所在,灵活掌握,为框架技术打基础。

     2、什么是java语言的反射机制?

      java程序在运行状态(指的是在运行时,而不是编译时)中:

          对于任意一个类,都能够知道这个类的所有属性和方法(也就是能够探知类的结构);

         对于任何一个对象,都能调用它的任意一个方法;

    这种动态获取信息以及动态调用对象方法的功能,就是java语言的反射机制。

例如,在Eclipse环境中,在一个对象后面输入“.”后,Eclipse就会自动将该对象的所有方法罗列出来以供选择,这就用到了java的反射机制。

3、java反射机制的动态性质:

    A、运行时生成对象实例;

    B、运行期间调用方法;

    C、运行时更改属性。

4、java反射可以实现什么功能?

   A、在运行时判断任意一个对象所属的类;

   B、在运行时构造任意一个类的对象;

   C 、在运行时判断任意一个类具有的方法和属性;

   D、在运行时调用任意一个对象的方法;

   E、生成动态代理。

你可能感兴趣的:(Java编程)