16.1 Class类

我们编写的代码,使用某个对象的方法或者属性时候,必须知道这个对象的方法名,这个方法有什么参数,如果使用属性那必须知道它的名字。这本来就是很自然的一件事。
现在可能需要面对这样一种场景:你可能无需知道调用的方法是什么名字!
我们可以称为动态代码执行。
每一个对象,都有一个Class属性,例如下面的代码所示,str是个String对象,我们可以通过str的getClass方法得到一个Class对象(这个getClass方法来自于Object):
String str="good";
Class c=str.getClass();
System.out.println(c.getName());
然后c这个Class对象,可以调用getName方法,得到的是str这个对象的类的名字的全称,打印的结果是:java.lang.String