1、编译时VS运行时
编译时:java代码编译成.class文件的过程,这个过程只纠正语法正确与否,而不涉及内存方面的任何问题
运行时:java虚拟机执行.class文件的过程,肯定会涉及内存调用
2、
Animal:编译时类型
new Dog():运行时类型
3、
4、
5、生成一个类就会生成一个.class文件,并生成Class对象,用来表示类的对象信息
6、class的获取方式
①
应用场景
②
③
④
⑤
⑥
7、
①通过反射获取资源的id
在activity中调用
②activity的启动过程用到的反射
ActivityThread是Android的启动类,Android中的一些api是隐藏的不给我们调用的,一定要调用这些hide方法或者这些私有方法或类,这时候就需要用到java的反射机制
newActivity方法创建实例
newActivity方法中是通过反射来得到的