### JavaSE复习回顾
#### Java概述与特性
- **面向对象**:Java是一种完全面向对象的语言,一切皆为对象。
- **健壮性**:Java设计时充分考虑了异常处理,增强了程序的健壮性。
- **安全性**:通过沙箱模型、内存管理等方式保证了应用程序的安全。
- **跨平台性**:Java程序一次编译,可以在任何安装了Java虚拟机(JVM)的平台上运行,实现了“编写一次,到处运行”(Write Once, Run Anywhere, WORA)的理念。
- **解释型**:Java程序不是直接在操作系统上运行的,而是通过JVM来解释执行。
#### Java平台分类
- **JavaSE**:Java平台的标准版,适用于桌面应用开发。
- **JavaEE**:Java平台的企业版,针对服务器端应用开发,包括Web应用等。
- **JavaME**:Java平台的微型版,适用于嵌入式设备和移动设备,如早期的安卓系统。
- **安卓**:虽然安卓主要使用Java语言进行开发,但它属于JavaME的一个分支,针对移动设备优化。
#### Java程序生命周期
1. **编写源代码**:使用文本编辑器或其他IDE编写符合Java语法的源代码文件(.java)。
2. **编译**:通过`javac`命令将源代码编译成字节码文件(.class)。
3. **运行**:使用`java`命令加载并执行字节码文件。JVM负责解释执行这些字节码。
#### Java基础语法
- **注释**
- 单行注释:使用`//`。
- 多行注释:使用`/* ... */`。
- 文档注释:使用`/** ... */`,用于生成API文档。
- **标识符与关键字**
- **标识符**:用于命名变量、方法等。必须遵循特定的命名规则,如不能以数字开头,区分大小写等。
- **关键字**:具有特殊含义的预定义词,如`public`、`class`等。
- **static关键字**
- 用于标记类的成员为静态成员。静态成员可以通过类名直接访问,无需实例化对象。
- **this关键字**
- 用于指代当前对象,常用于实例方法中。
- `this()`用于在构造方法中调用其他构造方法。
- **super关键字**
- 用于访问父类中的成员。
- `super()`用于调用父类的构造方法。
- **final关键字**
- 用于创建不可变的类、方法或变量。
- `final`类不能被继承。
- `final`方法不能被重写。
- `final`变量一旦初始化就不能改变其值。
#### 变量
- **变量分类**
- **局部变量**:定义在方法体内部的变量,生命周期局限于方法体。
- **成员变量**
- **实例变量**:没有`static`修饰的变量,存储在对象的堆内存中。
- **静态变量**:带有`static`修饰的变量,存储在方法区中。
- **数据类型**
- **基本数据类型**:
- 整数型:`byte`、`short`、`int`、`long`。
- 浮点型:`float`、`double`。
- 布尔型:`boolean`。
- 字符型:`char`。
- **引用数据类型**:包括数组、类、接口等。
#### 数据类型转换
- **自动类型转换**:低精度类型可以自动转换为高精度类型。
- **强制类型转换**:高精度类型转换为低精度类型需要显式转换。
#### 运算符
- **算术运算符**:包括加(`+`)、减(`-`)、乘(`*`)、除(`/`)、取模(`%`)。
- **关系运算符**:用于比较两个值之间的关系,如`>`、`<`、`>=`、`<=`、`==`、`!=`。
- **逻辑运算符**:用于连接布尔表达式,如`&&`(逻辑与)、`||`(逻辑或)、`!`(逻辑非)。注意区分短路逻辑运算符`&&`和`||`与普通逻辑运算符`&`和`|`。
通过以上内容的总结,我们不仅可以了解Java的基本概念和发展背景,还能深入理解其核心语法结构以及如何编写和运行Java程序。这对于学习和掌握Java编程语言至关重要。