不积跬步,无以至千里;不积小流,无以成江海。
Java语言基础(Java基本语法)
关键字:
定义:被Java语言赋予的特殊含义,用作专门用途的字符串(单词)。
特点:关键词中所有的字母都是小写。
举例:
用于定义数据类型的关键字 class、interface、int等 。
用于定义流程控制的关键字 if、else、do等。
用于定义访问权限修饰符的关键字 private、public等。
用于异常处理的关键字 try、catch等
……
稍微注意:
JDK1.4的时候出现 assert 关键字,用于异常处理;
JDK1.5的时候出现 enum 关键字,用于枚举定义;
未使用到的关键字:goto,const;
true 、false、null 不是关键字。
保留字:
现有Java版本尚未使用,但以后版本可能作为关键字使用。命名标志符时避免使用保留字。
goto、const
标志符:
Java对各种变量、方法、类等要素命名时使用的字符序列。
规则:
由26个英文字母大小写,0-9,_,或 $ 组成。
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,没有长度限制。
标志符不能包含空格。
变量
按数据类型分:

按声明的位置分:
成员变量: 在方法体外,类体内声明的变量。
局部变量:在方法体内部声明的变量。

注意:两种变量都有生命周期,但是局部变量需要显式初始化(除形参外)。
整型类型:
byte、short、int、long
Java的整型常量默认为 int 型,声明 long 型常量须后加 l 或者 L。

浮点类型:
float、double
Java的浮点类型默认为 double 型,声明 float 型常量须后加 f 或者 F。

字符类型:
char
Java中所有的字符都使用Unicode编码,故一个字符可以存储一个字母、一个汉字或者其他书面语的一个字符。
char型是可以进行计算的。因为它有对应的Unicode码。
字符型变量的三种表现形式:
1. 字符常量是用单引号括起来的单个字符。eg,char c = “a”,char d = “9”。
2. 使用转义字符 ‘\’ 将其后的字符转变为特殊字符型常量。eg,char c = ‘\n’(表示换行符)。
3. 直接使用Unicode值来表示字符型常量:‘uXXXX’。其中XXXX表示一个十六进制数。eg,\u000a 表示 \n 。
默认值:
整型:byte、short、int、long. 默认值:0;
浮点型:float、double. 默认值:0.0;
布尔型:boolean. 默认值:false;
字符型:char. 默认值:'\u0000';
引用类型:数组、类、接口. 默认值:null.
ASCII码
英语字符与二进位之间的关系作了统一的规定。一个规定了128个字符的编码。
常用的ASCII码如下:
空格:32
0~9 :48 ~ 57
A~Z:65 ~ 90
a~z:97 ~ 122
基本数据类型转换
容量小的类型自动转化为容量大的数据类型。排序如下图:

byte、short、char之间不会相互转化,在计算时首先转换为int类型。
boolean类型不能与其他数据类型运算。
当把任何基本数据类型的值和字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型。
原码,反码,补码
原码:将一个数值转化为二进制,最高位为符号位
正数:三个码都相等。
负数的反码:对原码按位取反,最高位(符号位)确定为1
负数的补码:反码加1
注:计算机以二进制补码的形式保存所有是整数。
机器只有加法,将符号位参与运算,所以用补码。
举例:
byte类型的取值范围:有符号的 [-128,127] ,无符号的 [0,255]。
对于有符号的数据类型来说:最高位为符号位 0 为正数,1为负数。
5 表示为 0000 0101
-5表示为( 原码):1000 0101 ===> 反码 :1111 1010 ===> 补码:1111 1011
那 -128 呢?
八位二进制原码或者反码的表示范围是 -127 ~ +127,不能表示 -128;而八位二进制补码的表示范围是 -128 ~ +127
-128 的 8 位二进制补码为10000000。
那 0 呢?
+0 -0
原码:00000000 100000000
反码:00000000 111111111
补码:00000000 000000000
结论:原码和反码会有两个编码表示 0,正 0 和 负 0 ,但是补码的出现, 解决了0的符号问题,并且还能够多表示一个最低数。
浙公网安备 33010602011771号