今日学习:
一.常见错误
1、使用临时变量,Java要求必须是先定义后使用,必须是先赋初值后使用
int k;
Systm.out.println(k);
2、目前的要求:将所有的程序都必须写在方法内部,不能写在方法外
public class ForTest{
int res=0;
for(int k=1;k<101;k++){
res+=k;
}
System.out.println("1+2+3+...+100="+res);
}
二.Java的三种核心机制
Java语言包含三种核心机制:Java 虚拟机、垃圾收集机制和代码安全检测。
三.Java虚拟机 JVM
①Java虚拟机可以理解成一个以字节码为机器指令的CPU
②对于不同的运行平台,有不同的虚拟机
③Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
四.垃圾收集机制 gc
①不再使用内存空间回收——垃圾回收
②在C/C++等语言中,由程序员负责回收无用内存
③Java语言消除了程序员回收无用内存空间的责任,它提供了一种系统级线程跟踪存储 空间的分配情况,并在JVM的空闲时检查并释放哪些可被释放的存储空间
④垃圾收集在Java程序原型过程中自动运行,程序员无法精确控制和干预
五.代码安全性检查
Java代码的目标运行环境在于网络,Java以牺牲执行性能为代价换取了高安全性
首先由类加载器classLoader负责将类文件.class加载到Java虚拟机中。通过区分本地文件系统的类
和网络系统导入的类增加安全性,可以限制任何木马程序,因为本机类总是有限被加载,一旦所有
的类都被加载完毕,直线文件的内存就固定了。
其次字节码校验器进行校验。字节码校验器不检查那些可信任的编译器生成的类文件,而是对违背
命名空间规定和java语言规则的类进行检查,并且关闭具有安全性漏洞的类文件
最后字节码校验通过后,才由Java解释器负责将类文件解释成为机器码