1 注释
1.1 单行注释
//单行注释
1.2 多行注释
/*
多行注释
多行注释
多行注释
多行注释
*/
1.3 文档注释
/**
*@Description
*@Author
*/
2 标识符与关键字
2.1 标识符
Java所有的组成部分都需要名字,类名、变量名以及方法名都被称为标识符。
//helloworld是类名
public class helloworld {
//main是方法名
public static void main(String[] args) {
//name是变量名
String name = "xx";
System.out.println("hello, world");
}
}
注意
1.所有的标识符都应该以字母(A-Z 或者a-z) 、美元符($)、或者下划线( )开始;
2.首字符之后可以是字母(A-Z 或者a-z) 、美元符($)、下划线( )或数字的任何字符组合;
3.不能使用关键字作为变量名或方法名;
4.标识符是大小写敏感的;
5.可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音。
2.2 关键字
abstract | 表明类或者成员方法具有抽象属性 |
assert | 断言,用来进行程序调试 |
boolean | 基本数据类型之一,声明布尔类型的关键字 |
break | 提前跳出一个块 |
byte | 基本数据类型之一,字节类型 |
case | 用在switch语句之中,表示其中的一个分支 |
catch | 用在异常处理中,用来捕捉异常 |
char | 基本数据类型之一,字符类型 |
class | 声明一个类 |
const | 保留关键字,没有具体含义 |
continue | 回到一个块的开始处 |
default | 默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现 |
do | 用在do-while循环结构中 |
double | 基本数据类型之一,双精度浮点数类型 |
else | 用在条件语句中,表明当条件不成立时的分支 |
enum | 枚举 |
extends | 表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口 |
final | 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量 |
finally | 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 |
float | 基本数据类型之一,单精度浮点数类型 |
for | 一种循环结构的引导词 |
goto | 保留关键字,没有具体含义 |
if | 条件语句的引导词 |
implements | 表明一个类实现了给定的接口 |
import | 表明要访问指定的类或包 |
instanceof | 用来测试一个对象是否是指定类型的实例对象 |
int | 基本数据类型之一,整数类型 |
interface | 接口 |
long | 基本数据类型之一,长整数类型 |
native | 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的 |
new | 用来创建新实例对象 |
package | 包 |
private | 一种访问控制方式:私用模式 |
protected | 一种访问控制方式:保护模式 |
public | 一种访问控制方式:共用模式 |
return | 从成员方法中返回数据 |
short | 基本数据类型之一,短整数类型 |
static | 表明具有静态属性 |
strictfp | 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 |
super | 表明当前对象的父类型的引用或者父类型的构造方法 |
switch | 分支语句结构的引导词 |
synchronized | 表明一段代码需要同步执行 |
this | 指向当前实例对象的引用 |
throw | 抛出一个异常 |
throws | 声明在当前定义的成员方法中所有需要抛出的异常 |
transient | 声明不用序列化的成员域 |
try | 尝试一个可能抛出异常的程序块 |
void | 声明当前成员方法没有返回值 |
volatile | 表明两个或者多个变量必须同步地发生变化 |
while | 用在循环结构中 |
3 数据类型
Java是一种强类型语言,要求变量的使用要严格符合规定,所有变量必须先定义后才能使用。
Java的数据类型分为基本类型和引用类型。
//八大基本数据类
// 整数
int num1=10;//最常用
byte num2=20;
short num3=30;
long num4=40L;//long类型后面加L
//浮点数
float num5=50.1F;//float类型后面加F
double num6=60.123456789;
//字符类型
char name1='a';
String name2="嘿嘿"; //string不是关键字,而是一个类
//布尔值
boolean flag=true;
进制问题
//二进制0b 十进制 八进制0 十六进制0x
int i1 = 10;//10
int i2 = 010;//8
int i3 = 0x10;//16
浮点数拓展
浮点数是有限的和离散的,有舍入误差,得出的是一个接近但不等于的数,最好完全避免使用浮点数进行比较。例如银行业务的表示,通常用BigDecimal(一个数学工具类)
字符类拓展
public static void main(String[] args) {
char c1 = 'a';
char c2 = '嘿';
System.out.println(c1);
System.out.println((int)c1);//强制转换为int类型
System.out.println(c2);
System.out.println((int)c2);//强制转换为int类型
}
输出结果如下:
a
97
嘿
22079
可见,所有的字符本质还是数字。
转义字符
转义字符 | 意义 |
\a | 响铃(BEL) |
\b | 退格(BS) ,将当前位置移到前一列 |
\f | 换页(FF),将当前位置移到下页开头 |
\n | 换行(LF) ,将当前位置移到下一行开头 |
\r | 回车(CR) ,将当前位置移到本行开头 |
\t | 水平制表(HT) (跳到下一个TAB位置) |
\v | 垂直制表(VT) |
\\ | 代表一个反斜线字符''\' |
\' | 代表一个单引号(撇号)字符 |
\" | 代表一个双引号字符 |
\? | 代表一个问号 |
\0 | 空字符(NUL) |
\ddd | 1到3位八进制数所代表的任意字符 |
\xhh | 十六进制所代表的任意字符 |
4 变量
变量,顾名思义,是指可以变化的量。Java是一种强类型语言,每个变量都必须声明其类型。
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
注意
1.每个变量都有类型,类型可以是基本类型,也可以是引用类型。
2.变量名必须是合法的标识符。
3.变量声明是一条完整的语句,因此每一个声明都必须以分号结束