对于java语言,数据类型的意义主要体现在以下几个方面:
- 任何数据在任何时刻都有所属类型。
- 不同的数据类型能够存放不同性质的数据,例如,整型能够用来表示年龄,而布尔值能够用来表示性别是否为男性。
- 不同的数据类型在内存中被分配的字节数可能不相同,从而他们各自能表示的数值范围也不同。
- 数据类型决定了能够对数据进行的操作。例如,可以对整型数据做移位操作,可以对字符型数据座大小写转换操作。
java的数据类型可以分为两大类:
- 基本类型:表示具有原子性的数据,如整数、小数、字符
- 对象类型:复合的数据类型
java的基本类型
分类 | 类型名 | 占据的字节数 | 默认值 |
---|---|---|---|
整型 | byte | 1 | 0 |
short | 2 | 0 | |
int | 4 | 0 | |
long | 8 | 0 | |
浮点型 | float | 4 | 0.0 |
double | 8 | 0.0 | |
字符串 | char | 2 | |
布尔型 | boolean | 未明确定义 | true和false |
关键字和保留字
关键字是一类具有特殊含义和用途的标识符,而保留字则是预留的关键字,只是当前尚不可用,但可能在后续jdk版本中成为正式的关键字。
关键字常用于表示数据类型、程序结构或修饰变量
分类 | 关键字 |
---|---|
类型相关 | 基本类型名:boolean,byte,short,int,long,char,float,double |
类型值:false,true,null | |
类型定义:class,interface,enum | |
与其他类型的关系:extends,implements | |
对象引用:this,super | |
对象创建:new | |
返回类型:void | |
修饰符 | 访问控制:private,protected,public |
属性控制:final,abstract,static | |
浮点精度控制:strictfp | |
本地方法:native | |
序列化:transient | |
多线程:synchronized,volatile | |
流程控制 | 分支:if,else,switch,case,default |
循环:for,do,while,break,continue | |
异常处理:try,catch,finally,throw,throws | |
其他:instanceof,assert,return | |
包相关:import,package | |
留待扩展(保留字):const,goto |
用户标识符
java的标识符命名规则包括
- 包含数字,字母,下划线,美元符号
- 不能以数字开头
- 不能与关键字相同
- 标识符的长度没有限制,但不要过长
- 标识符区分大小写,如Max何max是不同的标识符
- 除某些特定位置之外,标识符命名应尽量使用英文单词,并做到见名知意
- 标识符可以包含下划线而非横线,java编译器会将后者理解为运算符,从而导致语法错误
- 一般不推荐使用$字符,若确实需要将标识符分割成几部分,可使用下划线。
java命名惯例和约定
分类 | 命名惯例和约定 | 示例 |
---|---|---|
包 | 1.采用“从大到小”的方式——与网络域名的顺序相反 | edu.ahpu.oa.ui,com.mycompany.mysoft |
每级包名都用小写字母 | ||
若由多个单词组成,则直接连在一起 | ||
类 | 使用“大驼峰”每个单词的首字母大写,其余小写 | Account |
尽量使用名次结尾 | VipCustomer | |
接口 | 使用“大驼峰”表示法 | Drawable |
通常以able结尾,有时也可以以大写字母I开头 | Drawable | |
方法 | 使用“小驼峰”从第二个单词开始,每个单词的首字母大写,其余小写 | deleteStudent |
第一个单词一般是动词 | getUserInfo | |
若是取值型方法,一般以get开头 | ifFemale | |
字段和局部变量 | 使用“小驼峰”表示法 | studentWithMaxAge |
命名应能体现变量值的意义 | ||
短名称一般只用于局部变量且是基本类型,如循环结构中的整型计算器 | ||
若变量是数组或容器,则应使用单词的复数形式 | ||
常量 | 全部大写,多个单词用下划线隔开 | PI |