什么是反射机制
Posted wutongshu-master
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是反射机制相关的知识,希望对你有一定的参考价值。
反射机制是Java语言中的一个特性,它允许程序在运行时进行自我检查,同时也允许其内部的成员进行操作。
具体而言,反射机制提供的功能主要有:
1)得到一个对象所属的类;
2)获取一个类的所有成员变量和方法
3)在运行时创建对象
4)在运行时调用对象的方法
其最重要的一个作用就是可以动态地创建类的对象,代码如下
public class Base { public void f(){ System.out.println("Base"); } }
public class Sub extends Base{ @Override public void f() { System.out.println("Sub"); } }
public class TestReflex { public static void main(String[] args) { try { Class c=Class.forName("Sub"); Base base= (Base) c.newInstance(); base.f(); } catch (Exception e) { e.printStackTrace(); } } }
运行结果为:
在反射机制中,Class是一个非常重要的类,那么如何才能获取Class类呢?总共有以下三种方法可以获取
1)Class.forName("类的路径")
2)类名.Class
3)实例.getClass()
常见笔试题:
Java创建对象的方式有几种?
答案:总共有4种
1)通过new语句实例化一个对象
2)通过反射机制创建对象
3)通过clone()方法创建对象
4)通过反序列化的方式创建对象
以上是关于什么是反射机制的主要内容,如果未能解决你的问题,请参考以下文章