美文网首页安卓面试面试题java试题
Java面试题集锦07—Java的反射机制

Java面试题集锦07—Java的反射机制

作者: advance_bravely | 来源:发表于2016-10-14 18:58 被阅读351次

    27.反射的原理是什么
    反射是为了能够动态的加载一个类,动态的调用一个方法,动态的访问一个属性等动态要求而设计的。它的出发点就在于JVM会为每个类创建一个java.lang.Class类的实例,通过该对象可以获取这个类的信息,然后通过使用java.lang.reflect包下得API以达到各种动态需求。

    28.Class类的含义和作用是什么
    每一个Class类的对象就代表了一种被加载进入JVM的类,它代表了该类的一种信息映射。开发者可以通过3种途径获取到Class对象。

    • Class的forName()方法的返回值就是Class类型,也就是动态导入类的Class对象的引用。
      public static Class<?> forName(String className) throws ClassNotFoundException
    • 每个类都会有一个名称为Class的静态属性,通过它也是可以获取到Class对象的,示例代码如下:
      Class<Student> clazz = Student.class; // 访问Student类的class属性
    • Object类中有一个名为getClass的成员方法,它返回的是对象的运行时类的Class对象。因为Object类是所有类的父类,所以,所有的对象都可以使用该方法得到它运行时类的Class对象,示例代码如下:
      Student stu = new Student();
      Class<Student> clazz = stu.getClass(); // 调用Student对象的getName方法

    相关文章

      网友评论

        本文标题:Java面试题集锦07—Java的反射机制

        本文链接:https://www.haomeiwen.com/subject/eaowyttx.html