1.1 关键字、标识符和注释
关键字: key word 被高级编程语言赋予特殊含义的一些英文单词,特点 都是小写字母 不能随便使用、
不是关键字,但也是具有特殊含义的一些单词,像String,system都是java内置类,像这种java自带类我们也不能随便使用
标识符: 指的是再程序中我们程序员为一些数据起的名称,自定义名称
类名,变量名,函数名(主函数的名称main虽然不是关键字 本身标识符 但是比较关键 对于jvm主函数只认main)
起名规则:
1.由数字、字母和下滑线_和美元符$组成,其中数字不能开头,必须是一个连续的词
2.严格区分大小写
3.不能使用关键字和java内置类的名称
起名规范(最主要的含义就是通过单词的组成从而可以更快地看出数据所代表的含义)
1.变量/函数:第一个单词首字母小写,其他单词首字母大写 myAge yourBoyfriend test()
2.类/接口:所有单词的首字母大写 System String
3.常量:所有字母大写 单词和单词之间用_ 分隔 MAX_VALUE pi
4.包名:所有字母小写,单词与单词之间用. 分隔(文件层级)
1.2 常量
常量
从数据量的角度而言,表示不变的量
从代码的角度而言,就是直接在程序中出现的数据 也称之为字面量
还有一种是通过变量的形式 将一个具体的常量给他符号化pi
\u 在Unicode字符集中 取编号为00AF’的字符9
1.3 变量与数据类型
变量
所谓的变化的量
变量是临时存在的
变量存的是临时的值 也是可变的
变量存的值可变范围必须是同类型的
变量存的值是有限的
变量要存数据 就需要消耗空间
变量的本质:变量就是内存中的一个临时空间,该空间有真实物理地址(指针),但是为了方便使用该空间,所以起一个别名-变量名,用来存储有大小限制的并且变化是在同一个类型(向下兼容也行)的常量
数据类型
数据类型主要决定的是变量存储值的大小限制和常量类型,也决定了变量的类别。
在java当中,数据类型分两大类别
。基本数据类型(数据值直接存在变量空间里)
整形
byte 1字节 8比特
short 2字节 16比特
int 4字节 32比特(默认使用 整型常量默认int类型)
long 8字节 64比特
浮点型
float 4字节
double 8字节
布尔型
boolean 不确定
boolean b= true;
对于单一的布尔类型变量而言,JVM将true解析为1,false 0,1和0都是整型常量 默认int类型4字节
boolean[]bs =new boolean[5];
对于布尔类型的数组而言,jvm将每一个数据空间解析为byte
字符型
char 2字节 0---65535因为编码都是正数和零
。引用数据类型(数据值存在堆内存,变量空间里存的是数据值在堆内存中的地址)
字符串
数组
对象
1.4 运算符
算数运算符
+
-
*
/
%
i++(先用后加)
1.开辟临时存储取 将i的值赋值进取
2.i自身+1
3.临时存储取等待被调用 (输出 赋值 运算)
++i(先加后用)
1.i自身+1
2.等待被调用(输出 赋值 运算)
赋值运算符
+=
-=
*=
/=
%=
=
逻辑运算符
两边一定是布尔 结果一定是布尔
&单与
|单或
!非 取反
&& 双与
||双或
^异或
public static Sample{ public static void mian(String[] args){ int x=0; int y=0; System.out.println(x++ > 0& y++ >0); System.out.println("x = " + x);//1 System.out.println("y = " + y);//1 //&两边都执行 int a=0; int b=0; System.out.println(a++ > 0&& b++ >0); System.out.println("a = " + a);//1 System.out.println("b = " + b);//0 //&& 左边一旦为假 右边不执行 //|两边都执行 //|| 左边一旦为真 右边不执行 } }
与:有假则假 全真则真
或:有真则真 全假则假
异或:相同为假 不同为真
比较运算符
目前而言 两边一定是数值 结果一定是布尔
‘>’
‘<’
‘<=’
‘>=’
‘!=’
‘==’
位移运算符
&
|
^
‘>>’
‘<<’