java语法:
关键字:
1.在java中具有特殊功能的单词(共有53个 const,goto都是保留字,在以后的版本中将会使用作为关键字)
2.关键字--(true、false 、null (有歧义有人认为是,有人认为是)———>有自己的功能,有确切的值)
**2.所有的关键字都是小写,在程序里面大小写很有讲究的**
标识符:合法标识符的标准满足以下(见名知意)
1.在java中可以自定义的名称
2.组成范围(
1.各国常见文字
2.数字(0~9)
3.特殊符号(-、$-->慎用,内部类默认标识符里使用$)
3.命名规则 :
1.不能以数字开头
2.不能是关键字(class等关键字)
3. 命名可以使用$(美元符号开头,但是不能使用&开头---容易出错的点)
4命名规范:
1.驼峰命名法-
1.类名/接口名--每个单词的**首字母大写** UserServlet
2.方法名/变量名--第一个单词小写,其他单词首字母大写 addUser
3.包名(包代表文件夹来区分同名类,包--》单级文件夹都是小写xxx.cn 多级文件夹cn.xxx.yyy.day01)
4.cn.spring.--->s包名表示的是不是标识符(一定要注意,不是包名),包名容易不是标识符
标识符:类名,方法名,变量名
5.常量名--XXX_YYY_ZZZ 全部都是大写
5. 常量:(字面值常量6种分类)、自定义常量(修饰符使用的是final)
|类别|示例 说明 |
|整型|10,12|主要是由进制的区别
| 浮点型|2.31f |浮点数常量没有任何标志时会存储成double类型的数据,当要使用附浮点型时,可在后面加上f或F,例如2,34f会表示成该数为float类型
| 字符型|'c' '1'|使用两个单括号,一个字符占用的字节编码看平台的编码
| 字符串型|"changjiang"|该类型不是基本数据类型,在java种被称为引用数据类型
|布尔型|true、false|只有这两个值
特别要注意的常量:null是常量—》默认给引用类型进行赋值的常量,在常量池中存在,不指向任何的内存地址和引用地址
字型的长度:两个字节,16位二进制位----2^16----0—>65535
所有的码表都兼容ASCii码表----字符转码的时候在(0–127)转码是兼容的
char c='a';用gbk编码,底层占用几个字节?1
char c='中';用utf-8编码,底层占用几个字节?3
变量分为声明和初始化的过程
----先进行声明(系统默认赋值操做----》变量初始化操作),底层默认要使用变量的话,变量必须要使用前要进行初始化。
挖坑常用:
byte b=128-1;---->为什么没有进行报错(当参与的数据都是常量时,编译会进行优化直接计算,2:之所以是可以进行赋值的操作是因为是右边的范围没有超过byte范围,此时常量数字来自于byte的常量池中,被int类型的常量池兼容)。
int b=10; byte a=(byte)b---->必须要进行强制转型,因为int类型兼容byte类型,byte类型和int类型做运算时会自动进行扩大范围,自动提升为int的范围,此时两个范围不一样,必须统一一个范围。(byte short char是一样的会自动进行提升范围)--->**超过范围便要进行强制的转换**
特别注意:char类型的数据不能给负数进行赋值,因为char是没有负数的范围,所以赋值负数报错
.