2 基本概念
Java 基本概念详解
2.1 字面量
什么是字面量:告诉程序员数据在程序中的书写格式
字面量类型:
整数:如
100、0b1010(二进制)、0123(八进制)、0x1A(十六进制)小数:如
3.14、1.23e-4(科学计数法)字符串:如
"Hello, Java!"字符:如
'A'、'\n'(换行符)布尔:
true、false空(null):
null
特殊字面量:空类型
null、制表符\t、换行符\n、回车符\r、退格符\b、单引号\'、双引号\"、反斜杠\\
2.2 变量
// 定义格式
DATATYPE DATANAME = DATAVALUE;变量命名规则:
必须以字母、下划线
_或美元符号$开头后续字符可以是字母、数字、下划线或美元符号
大小写敏感
不能使用 Java 关键字作为变量名
变量作用域:
局部变量:在方法或代码块中定义,仅在定义它的代码块内有效
成员变量:在类中定义,在整个类中有效
静态变量:使用
static修饰,属于类,在整个类中有效
2.3 运算符
算术运算符:
+、-、*、/、%、++、--赋值运算符:
=、+=、-=、*=、/=、%=比较运算符:
==、!=、>、<、>=、<=逻辑运算符:
&&(与)、||(或)、!(非)位运算符:
&、|、^、~、<<、>>、>>>三元运算符:
条件 ? 表达式1 : 表达式2运算符优先级:从高到低依次为:括号
()> 一元运算符 > 算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符类型转换:
隐式转换:小范围转换为大范围(如
byte→short→int→long→float→double)显式转换(强制类型转换):大范围转换为小范围,如
(int)3.14byte、short、char进行运算时自动转换为int运算符的其中一个操作数为字符串时,另一个操作数也转换为字符串
2.4 流程控制
顺序结构:代码按照书写顺序依次执行
分支结构:
if语句:if (条件) { 代码块 }if-else语句:if (条件) { 代码块1 } else { 代码块2 }if-else if-else语句:多条件分支switch语句:switch (表达式) { case 值: 代码块; break; ... default: 代码块; }
循环结构:
for循环:for (初始化; 条件; 更新) { 代码块 }while循环:while (条件) { 代码块 }do-while循环:do { 代码块 } while (条件);循环控制:
break(跳出循环)、continue(跳过当前循环,进入下一次循环)
2.5 数据类型
基本数据类型:
整数类型:
byte(1字节)、short(2字节)、int(4字节)、long(8字节)浮点类型:
float(4字节)、double(8字节)字符类型:
char(2字节)布尔类型:
boolean(1位)
引用数据类型:
类(
class)接口(
interface)数组(
[])枚举(
enum)注解(
@interface)
2.6 数组
数组定义:
// 方式1 数据类型[] 数组名 = new 数据类型[长度]; // 方式2 数据类型[] 数组名 = {元素1, 元素2, ...};数组访问:通过索引访问,如
数组名[索引]数组长度:
数组名.length多维数组:如
int[][] matrix = new int[3][4];
2.7 方法
方法定义:
[修饰符] 返回类型 方法名([参数列表]) { 方法体 [return 返回值;] }方法调用:
方法名([参数]);方法重载:在同一个类中,方法名相同但参数列表不同的多个方法
方法递归:方法调用自身的过程
2.8 类和对象
类的定义:
[修饰符] class 类名 { // 成员变量 // 构造方法 // 成员方法 }对象的创建:
类名 对象名 = new 类名([参数]);构造方法:与类名相同,无返回值,用于初始化对象
this 关键字:引用当前对象
static 关键字:修饰静态成员,属于类而非对象
2.9 修饰符
访问修饰符:
public:公共的,任何类都可以访问protected:受保护的,同一包内的类和子类可以访问default(默认):同一包内的类可以访问private:私有的,只有本类可以访问
非访问修饰符:
static:静态的final:最终的,不可修改abstract:抽象的synchronized:同步的native:本地的transient:瞬态的volatile:易变的
2.10 包和导入
包的定义:
package 包名;包的导入:
import 包名.类名;或import 包名.*;静态导入:
import static 包名.类名.静态成员;
2.11 异常处理
异常类型:
检查型异常(Checked Exception):必须处理的异常
非检查型异常(Unchecked Exception):运行时异常,可选择性处理
异常处理机制:
try-catch:捕获并处理异常try-catch-finally:捕获异常并执行清理操作throw:抛出异常throws:声明方法可能抛出的异常
2.12 注释
单行注释:
// 注释内容多行注释:
/* 注释内容 */文档注释:
/** 注释内容 */,用于生成 API 文档