类型转换
由于Java是强类型语言,所以在进行某些运算的时候,需要进行类型转换。
- 数据类型优先级
byte,short,char->int->long->float->double
低------------------------------------------------>高 - 强制类型转换
- (类型)变量名
- 高--------->低
- 自动类型转换
- 低--------->高
注意
- 不能对布尔值进行转换。
- 不能把对象类型转换为不相干的类型。
- 转换时可能存在内存溢出和精度问题。
- JDK7的特性,数字之间可以用下划线进行分割。
- 强制转换通常要在计算之前进行。
变量
变量是可以变化的量。
Java是强类型语言,每个变量都必须声明其类型。
变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varname = value;
//数据类型 变量名 = 值;
//可以用逗号隔开来声明多个同类型变量
变量作用域
- 类变量(类静态变量)
static修饰,无需将类实例化即可访问,同一个类类型共享其值。 - 实例变量
需要对类进行实例化才可以访问的变量,每个实例化的类独自占有,如果不进行初始化,会自动赋默认值。 - 局部变量
必须进行初始化。
常量
不会变动的值,初始化之后不能再改变它的值。
常量名一般使用大写字符。
final 类型 常量名 = 值;
final double PI = 3.14;
命名规范
- 小驼峰命名法(camel命名法)
除第一个单词首字母小写,其它单词首字母大写。 - 大驼峰命名法(pascal命名法)
每个单词首字母都大写。 - 匈牙利命名法
变量名 = 属性 + 类型 + 对象描述
标识符以一个或多个小写字母开头作为前缀,之后是首字母大写的一个或多个单词的组合,该单词要指明变量的用途。
- 类成员变量:小驼峰
- 局部变量:小驼峰
- 常量:大写字母和下划线
- 类名:大驼峰
- 方法名:小驼峰
基本运算符
- 算数运算符:+,-,*,/,%,++,–
- 赋值运算符:=
- 关系运算符:>,<,>=,<=,==,!=,instanceof
- 逻辑运算符:&&,||,!
- 位运算符:&,|,^,~,>>,<<,>>>
- 条件运算符:?:
- 扩展赋值运算符:+=,-=,*=,/=
注意
- 多个整数操作数运算,由long类型则结果为long类型,否则结果为int类型
- a++:先运算,再自增;++a:先自增,再运算。
- Math类的使用。
- 逻辑运算符有短路性质,若第一个条件不满足,则不会继续判断之后的条件。
- 位运算亦或(^),相同位0,不同为1。
- 位运算(<<,>>)可以用于*2,/2的操作,且效率更高。
- 尽量使用括号来控制运算优先级,提高可读性。
包机制
为了更好地组织类,Java提供了包机制,用于区别类的命名空间
package pkg1[. pkg2[. pkg3...]];
//导入包
import pakckage1[.package2...].(classname|*);
注意
- 一般利用公司域名倒置作为包名。
- 导入包下所有的类用通配符*。
JavaDoc
JavaDoc命令是用来生成自己的API文档的
javadoc -encoding UTF-8 -charset UTF-8 [java文件名]
参数信息
参数 | 作用 |
---|---|
@author | 作者名 |
@version | 版本号 |
@since | 指明最早使用的JDK版本 |
@param | 参数名 |
@return | 返回值 |
@throws | 异常抛出情况 |