JAVA基础篇1
注释
单行注释
//这是一个单行注释,由两个斜杠组成,不能嵌套多行注释
多行注释
/*这是一个
多行注释
,//里面不能嵌套多行注释,
但是可以嵌套单行注释*/
文档注释
/**javadoc:文档注释
*有功能,@
*/
标识符和关键字
关键字:
标识符命名规则:
所有标识符都应该以大小写字母,美元符($),下划线(_)开始;
首字母之后可以是大小写字母,美元符,下划线或数字的任何字符组合;
不能用关键字作为变量名和方法名;
《阿里巴巴Java开发手册》编写程序时可以用来参考格式
数据类型
基本类型:
整数类型:byte(1字节),short(2字节),int(4字节),long(8字节,long类型要在数字后面加一个L)
// 二进制0b,八进制0,十六进制0x
浮点类型:float(4字节,float类型要在数字后面加一个F),double(8字节)
//浮点数有舍入误差,最好完全避免用浮点数进行比较
字符类型:char(2字节)
//Uincode编码,/u0000
//字符串类型:string(string不是关键字,是类)
布尔值:boolean(true,false)
引用类型(除了基本类型之外的基本都是引用类型):
类
接口
数组
类型转换
自动转换:
低容量\(\rightarrow\) 高容量
byte,short,char\(\rightarrow\) int\(\rightarrow\) long\(\rightarrow\) float\(\rightarrow\) double
int i=1000000000//十亿
int j=20;
long total=i*j;//注意这里还是会发生溢出,因为是先计算i*j再转换为long类型
long total2=(long)i*j;//不会溢出
强制类型转换:
//(类型)变量名 从高到低
float=2.3;
int i=(float)m;
注意:
- 不能对布尔值进行转换;
- 不能把对象类型转换为不相干的类型;
- 把高容量转换为低容量的时候用强制转换;
- 转换的时候可能会出现内存溢出或者精度问题
变量
每个变量都有类型;
变量名必须是合法的标识符;
每个变量声明必须以分号结束
变量作用域:
- 类变量:static
- 实例变量:从属于对像,如果不自行初始化,会变成默认值
- 局部变量:必须声明和初始化值
常量:
//final 常量名 = 值;
//一般常量名由大写字母表示
final int A =3;
变量命名规范:
- 见名知意;
- 变量:第一个单词小写,后面的单词首字母大写;
- 类名:所有单词首字母大写;
- 方法名:第一个单词小写,后面的单词首字母大写;
运算符
算术运算符:+,-,*,/,%,++,--
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=instanceof
逻辑运算符:&&,||,!
位运算符:&,|,^,~,>>,<<,>>>
//&两个对应位都是1才为1;|有一个对应位为1就为1;^两个对应位相同为0,不同为1;~按位取反;<<乘2;>>除以2;
条件运算符:? :
扩展运算符:+=,-=,*=,/=
字符串连接符:+ //前面如果有string类型的会进行拼接,在后面则前面的会进行运算
优先级:多用()
包机制
java提供包机制,用于区别类名的命名空间
定义包:
package packagename;//packagename为这个文件所属于的包的包名;放在整个.java文件开头
一般利用域名倒置作为包名
导入包:
import packagename;//packagename为想要调用的包的包名或者下属的类名;放在package语句的后面,class的前面
import base.*//*为通配符,将下属所有的类导入
JavaDoc
javadoc命令是用来生成自己的API文档的:
cmd命令行
/**
*
* @author
* @version
* ...
*/