- // 注释内容
- 标识符由数字(09)和字母(AZ 和 a~z)、美元符号($)、下划线(_)以及 Unicode 字符集中符号大于 0xC0 的所有符号组合构成(各符号之间没有空格)
- 标识符的第一个符号为字母、下划线和美元符号,后面可以是任何字母、数字、美元符号或下划线。
- Java 区分大小写
- 标识符命名时,切记不能以数字开头,也不能使用任何 Java 关键字作为标识符,而且不能赋予标识符任何标准的方法名
- 数据类型:boolean、int、long、short、byte、float、double、char、class、interface
- 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally
- 修饰符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native
- 动作:package、import、throw、throws、extends、implements、this、supper、instanceof、new
- 保留字:true、false、null、goto、const
-
理解:数据必须定义后,才能够正常使用,强制类型
-
java、c、c++ 等规定好的,有严格规定
-
理解:数据无需按规定进行对数据进行定义特定的数据类型
-
Javascript、VB 等非严格规定
| 数据类型 | 字节数 | 二进制位数 | 封装器类名 | 介绍 |
|---|---|---|---|---|
| byte | 1 | 8 | Byte | 最大存储2^8-1,存放范围为-128~127 |
| short | 2 | 16 | Short | 最大存储2^16-1,存放范围为-32768~32767 |
| int | 4 | 32 | Integer | 最大存储232-1,存放范围为-231~2^31-1 |
| long | 8 | 64 | Long | 最大存储264-1,存放范围为-263~2^63-1,需加L |
| float | 4 | 32 | Float | 最大存储2^32-1,存放范围为3.4e-45~1.4e38,需加F或f |
| double | 8 | 64 | Double | 最大存储2^64-1,存放范围为4.9e-324~1.8e308 |
| boolean | 1 | Boolean | 只有true和false | |
| char | 2 | 16 | Character | 采用Unicode码,用双引号赋值 |
- 四种引用类型
| 引用类型 | 对象是否可引用 | 回收时间 | 代码显示 |
|---|---|---|---|
| 强引用 | 可以 | 不回收 | String str = new String(“hello”); |
| 软引用 | 可以 | 内存不足时 | MyObject obj = new myObject(); SoftReference sf = new SoftReference<>(obj); |
| 弱引用 | 可以 | 下一次 | MyObject obj = new MyObject(); WeakReference sf = new WeakReference(obj); |
| 虚引用 | 不可以 | 随时 |
- 例如:String、Data、Point、BigDecimal等
- 自定义类型引用
- 二进制:20 ---- 0b1010
- 十进制:20 ---- 10
- 八进制0b:20 ---- 0b24
- 十六进制0x:20 ----0x14
- float和double的缺陷:浮点数特别注意的点就是浮点数是有误差的。
- 其他表示类型–银行:BigDecimal
对字符和中文文字进行编码,能够使计算机实现跨平台语言的转换和处理。
2. 转义字符- r 回车
- n 换行
- t 跳格
- b 退格
- String str1 = “java”;
2. String str2 = new String(“java”);
-
第一种方法:引用str1被存放在栈区,字符串常量"java"被存放在常量池,引用str1指向了常量池中的"java"
-
第二种方法:引用str2被存放在栈区,同时在堆区开辟一块内存用于存放一个新的String类型对象。
-
强制类型转换 – 高 --> 低
例:double b = 12.3; int a = (int)b;
-
自动类型转换 – 低 --> 高
例:int b = 123; double a = b;
-
注意:
- 不能对布尔值进行转换;
- 不能把对象类型转换为不相关的类型;
- 转换会存在内存溢出和精度问题
- DataType dataname;
- DataType dataname = value;
- DataType dataname = x;
- final
- 修饰符不区分先后顺序
- 全大写
- 类变量:static int a = 1; 在类中
- 实例变量:int a = 1; 在类中
- 从属于对象,默认初始化值-- 整数/浮点数:0 0.0
- 布尔值:默认是false
- 除了基本类型,其余的默认值皆为null
- 局部变量:int i = 1; 在方法中,
- 必须声明和初始化值
public class Value{
public static final int MAXNUM= 10; // 常量
public static int a = 0; // 类变量
public String str="hello world"; // 实例变量
public void method(){
int i =0; // 局部变量
// 类变量使用
System.out.println(a);
// 实例变量使用
Value v = new Value();
System.out.println(v.str);
// 局部变量使用
System.out.println(i);
}
}
运算符
算术运算符
- +加 -减 *乘 /除 %取模
- ++自增 --自减
- 区分i++和++i:
- i++先其他操作后自增
- ++i先自增后其他操作
- = a = 2
- += a += 2 == a = a + 2
- -= a -= 2 == a = a - 2
- /= a /= 2 == a = a / 2
- ==等于 !=不等于 >大于 <小于 >=大于等于 <=小于等于
- && 逻辑与 1&&1=1 1&&0=0 0&&1=0 0&&0=0
- || 逻辑或 1||1=1 1||0=1 0||1=1 0||0=0
- ! 逻辑非 !1=0 !0=1
- 逻辑短路
public class LuoJi{
public static void main(String[] args){
int a = 5;//定义一个变量;
boolean b = (a<4)&&(a++<10);
System.out.println("使用短路逻辑运算符的结果为"+b);
System.out.println("a的结果为"+a);
}
}
位运算符
| 操作符 | 描述 | 例子 |
|---|---|---|
| & | 与 | 0011 1100 & 0000 1101 = 0000 1100 |
| | | 或 | 0011 1100 | 0000 1101 = 0011 1101 |
| ^ | 异或 | 0011 1100 ^ 0000 1101 = 0011 0001 |
| ~ | 取反 | ~0011 1100 = 1100 0011 |
| << | 左移 | 0011 1100 << 2 = 1111 0000 |
| >> | 右移 | 0011 1100 >> 2 = 1111 |
| >>> | 右移补0 | 0011 1100 >>> 2 = 0000 1111 |
-
b = (a == 1) ? 20 : 30;
-
System.out.println(""+10+20); System.out.println(10+20+"");
tools --> Generate JavaDoc
-
选择是整个项目还是模块还是单个文件
-
文档输出路径
-
Locale 选择地区,这个决定了文档的语言,中文就是zh_CN
-
传入JavaDoc的参数,一般这样写 -encoding UTF-8 -charset UTF-8 -windowtitle “文档HTML页面标签的标题” -link http://docs.Oracle.com/javase/7/docs/api



