Java概述
JVM,JRE和JDK
1、什么是跨平台
平台:指的是操作系统
跨平台:Java程序可以在任意的操作系统上运行,一次编写到处运行
原理:实现跨平台需要依赖java虚拟机JVM
2、JVM、JRE、JDK
JVM:Java虚拟机
JRE:Java运行环境,包括Java虚拟机和Java程序所需要的类库(JVM+类库)
JDK:JRE+Java的开发工具(编译工具javac.exe和打包工具jar.exe等)
关键字
1、特点
组成关键字的字母全部小写
常用的代码编辑器,一般都会标注颜色
2、关键字举例
非常见的关键字
native:Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能
strictfp:strict float point 精确浮点,可用于类、接口或方法,严格地计算操作数,让浮点运算更加精确
transient:当串行某个对象时,如果该对象的某个变量是transient,那么这个变量不会被串行进去。假设某个类的成员变量是transient,那么当通过ObjectOutputStream把这个类的某个实例保存到磁盘上时,实际上transient变量的值是不会保存的。因为从磁盘中读出这个对象的时候,对象的该变量会没有被赋值。
volatile:保证线程安全问题,两种特性:可见性和有序性;但是不能确保一个变量在多线程环境下都能保证正确性
assert:断言,测试里经常用到
注:非关键字的null、true和false
(1)null、true、false 是 Java 中的显式常量值,并不是关键字或保留字
(2)sizeof 是 C/C++ 中的方法,Java 中并没有这个方法,也没有该关键字 或 保留字
变量
1、变量概述
从本质上讲,变量是内存中的一小块区域
2、计算机存储单元
变量是内存中的小容器,用来存储数据。
计算机中最小信息存储单元是bit(位)
1B(字节) = 8bit
1KB = 1024B
标识符
1、标识符概述
给包、类、变量起名字
2、组成规则
由字符、下划线、美元符$组成(字符采用的是Unicode字符集,包括英文大小写字母,中文字符和数字字符等)
两个不能:不能以数字开头;不能是Java关键字
错题知识点
1、用javac.exe编译生成的文件是字节码文件,不是二进制可执行文件
2、Java工具中JDK用来运行Applet程序的命令是appletviewer
3、一个源程序编译通过后得到的结果文件数可能有多个
因为一个java源程序可能包含有多个类,只能有一个public类,其他的都是内部类,这时编译时会产生多个字节码文件;一个是public类名.class,其他的是public类名$内部类名.class
4、Java程序的可移植性
(1)平台无关性使得java程序可以运行在不同的机器上
(2)Java的类库也实现了不同平台的接口,使得这些类库可以移植
(3)Java编译器是由Java语言实现的,Java运行时系统是由标准C实现的,这使得Java系统本身就具有可移植性
5、Java程序是由什么组成的?Java源程序的命名规则是什么?
(1)Java程序是由若干个类组成的,但只有一个类是public类
(2)命名规则:源文件名必须与其中的public类名相同,并且扩展名是java;如果源文件中没有public类,只需要和某个类名相同即可,扩展名java
6、Java源文件中必须有public类吗?
不是必须的