1) JVM (Java Virtual Machine)
java语言最重要的 特征之一是:java的跨平台性。java编译器只需面向JVM,生成JVM能理解的代码或字节码文件。Java源文件经编译器,编译成字节码程序,通过JVM将每一条指令翻译成不同平台机器码,通过特定平台运行。
JVM细节:①指令集 ②寄存器(IR与PC) ③类文件格式(.class)④栈⑤垃圾回收器(gc)⑥存储区
2) 字符集
ASCII,美国信息交换标准代码(二进制)。
GBK,汉字编码
Unicode,国际通用字符集
3) java基本数据类型
java数据类型分为四种:整数类型,浮点类型 ,字符类型,布尔类型。
整数类型分为四种:byte,short,int,long。byte分为一个字节,表示范围为-128——127,其中10000000为-128;
short为2个字节表示范围为-2^15—2^15-1;int表示范围为四个字节;long为八个字节。
浮点数分为两种:float与double型。float为四个字节,其表示形式例:123.456f;double为八个字节,实例3.12421;
字符类型:char。两个字节
布尔类型:boolean.其有两个值:true,false。
4)原码,反码,补码
原码:除最高位为符号位外,其数值有二进制数表示。
反码:正数相同;负数除符号位,按位取反。
补码:正数相同;负数为反码末位加一。
5)数据类型的的转换
①隐式转换转换规则
byte——>short(char)——>int——>long——>float——>double
②强制转换
强制转换会损失精度,具体转换格式例子:
int a=3;
intb=5;
byte y;
y=(byte)(a+b);``
6) 字符与字符串的运算
①字符串的拼接
当第一个为字符串参与运算时,后面的相等于字符,拼接成一个大的字符串。
System.out.println("aysfdt"+'a'+1);
② 当第一个为字符时,当其与其它除字符串相加时相当于其对应的ASCII码值相加。再拼接上字符串
System.out.println('a'+1+"aysfdt");
7)运算符
(一)面试题一
++i与i++区别:
①++i,i先自增,然后产于运算.
②i++, i先参与运算,然后自增
(1)一些较为不常见的算数运算符(分为赋值运算符和关系运算符)
+= 例:a+= 等同于a=a+1;
相类似的还有:-=,*=,/=,%=
(2) 逻辑运算符与位运算符
逻辑运算符:&,|,^,!,&&,||
位运算符: &,|,^,~,<<(左移), >>(右移),>>>(无括号右移) 三元运算符
(3) 语法:条件表达式?表达式1:表达式2.
逻辑:条件表达式为真时,执行表达式1,否则执行表达式2