运行时:程序 运行 的时候;
编译时:代码 编译成 程序集 的时候;
专业术语往往都是很准确的用字,可以从字面好好理解哈。
JIT,现在混编语言都差不多这样,我们code编译时->中间码,[中间码会在运行时把中间码转换成实际机器码]。前后语境没问题的理解就是括号里面的文字。
算是动态运行
java的编译可以分运行时编译和预编译,有的错误在你编写程序的时候,就已经编译不通过,但是有的错误需要你运行代码的时候才报错
第一.你要理解什么是编译,打开本书10.1节,所谓编译总体概括就是1.把Java文件编译成class文件2.或者Java文件编译成机器指令3.class文件编译成机器指令.
第二.从编译的角度可以,一段Java代码可以有源码,字节码(class文件),运行时三种时期的状态存在.运行时就是在程序运行的过程之中.
第三.动态代理可以通过jdk或cglib等具体实现,我不知道你说的是哪一种,你了解动态代理吗.
第四.好好把第四章读一读,你自己就有答案了