RTTIRTTI运行时类型信息,能够在程序运行时发现和使用类型信息,把我们从只能在编译期知晓类型信息并操作的局限中解脱出来传统的多态机制正是 RTTI 的基本使用:假设有一个基类 Shape 和它的三个子类 Circle、Square、Triangle,现在要把 Circle、Square、Triangle 对象放入 List 中,在运行时,先把放入其中的所有对象都当作 Object 对象来处理,再自动将类型转换为 Shape。forName() 是 Class 类的一个静态方法,我们可以使用 forName() 根据目标类的全限定名得到该类的 Class 对象。使用 forName() 会有一个副作用,那就是如果这个类没有被加载就会加载它,而在加载的过程中,Gum 类的 static 初始块会被执行。当 Class.forName() 找不到要加载的类,就会抛出异常
暂无评论