JAVA工作方式
- . 目标: 使写出的程序能在任意设备上运行
. 过程: 源代码 ==> 编译器 ==> 输出 ==> JVM运行
1. 源码: 程序员编写. 2. 编译器: 运行源码,检查语法错误. 3. 输出: 编译器产出字节码,JVM把字节码译成可执行内容,编译后的字节码与平台无关. 4. JVM: 任意平台虚拟机可以读取与执行字节码.
JAVA程序结构
- . 类存于源代码文件里
- . 方法存于类中
- . 语句存于方法中
JAVA所有的东西都会属于某个类,建立源文件(.java),编译它生产出类文件(.class).真正被执行的是类.要执行程序就代表要命令JVM去加载该类,开始执行它的main方法,一直运行到main所有程序代码结束.
编译器与JVM小故事(口舌之争)
JVM: 只有我跑JAVA.class,只有我才使程序跑起来.
Compiler: 俺必须要检查源代码中所有语法错误你才能用.
Compiler: 俺JAVA强类型语言,代表不容许变量保存类型的数据(保证关键的类型安全性功能)
JVM: 你又不是全部异常捕获,还是需我将错误类型的数据塞进数组中而不得抛出异常
Compiler: 有些数据类型的错误会在运行时发生,但俺这是为了要容许动态绑定这样的功能.(确保除了运行时发生的错误异常捕获).
JVM: 存取权限的安全问题还是靠我把关,你不过只做了些标点符号检查.
Compile: 数据类型错误处理不好可是个BUG.So 俺才是安全的第一线,我能够防止人们动到不可以碰的程序代码与其他类的重要数据.
JVM: 我也做同样的事情,确保不会有在执行前修改二进制代码
JVM: 得,我俩的功能多的说不清楚.走一起去吃火锅..
Compile: 海底捞啊..走起
…..待续: 2017年1月15日 周日 ZZ