编译和运行的区别 1.编译就是将java代码交给编译器进行语法检查,如果没有错误就生成.class文件 2.运行就是将字节码文件(.class)交给java虚拟机执行,如果没有逻辑错误,就成功出现结果。 编译期和运行期内存的分配 1.编译期仅仅知道内存分配的位置和大小,不做具体的分配操作 2.运行期确定真正的分配,确定分配的大小以及位置 常见的错误 1.编译错误是常见的语法错误:缺少分号,大小写 2.运行错误是逻辑错误:空指针异常,越界访问,除数为0等