Java类与对象的深入理解
发布时间: 2023-12-20 00:47:29 阅读量: 15 订阅数: 16
# 第一章:Java基础概念回顾
## 1.1 Java编程语言简介
## 1.2 类与对象的基本概念
## 1.3 类与对象的关系
### 第二章:Java类的定义与使用
在这一章,我们将深入探讨Java类的定义和使用。我们将详细介绍如何定义一个Java类、类的成员变量与方法、构造方法与静态方法,以及封装与访问控制的相关内容。让我们一起来学习吧!
## 第三章:Java对象的创建与销毁
在本章中,我们将深入探讨Java中对象的创建、初始化、引用管理以及对象的销毁和垃圾回收等相关概念和技术。
### 3.1 对象的创建与初始化
在Java中,对象的创建和初始化是通过构造方法来实现的。当使用关键字```new```创建一个对象时,实际上是在调用该类的构造方法来完成对象的初始化。同时,Java还提供了初始化块来进行对象的初始化工作,包括实例初始化块和静态初始化块。
#### 示例代码
```java
public class Car {
private String brand;
private String color;
// 构造方法
public Car(String brand, String color) {
this.brand = brand;
this.color = color;
}
// 实例初始化块
{
System.out.println("执行实例初始化块");
}
// 静态初始化块
static {
System.out.println("执行静态初始化块");
}
public static void main(String[] args) {
Car car = new Car("Toyota", "Red");
}
}
```
#### 代码总结
- 通过```new```关键字创建对象时会调用构造方法进行初始化。
- 实例初始化块在每次创建对象时都会执行,优先于构造方法。
- 静态初始化块在类加载时执行,仅执行一次。
#### 结果说明
执行以上代码,会输出以下结果:
```
执行静态初始化块
执行实例初始化块
```
### 3.2 对象的引用与内存管理
在Java中,对象的引用是通过引用变量来实现的,对象本身存储在堆内存中,而引用变量存储在栈内存中。当引用变量不再指向对象时,该对象不会被立即销毁,而是等待垃圾回收器进行垃圾回收。
#### 示例代码
```java
public class Main {
public static void main(String[] args) {
Car car1 = new Car("BMW", "Black");
Car car2 = new Car("Audi", "White");
Car car3 = car1; // car3和car1引用同一个对象
car1 = null; // 将car1指向null,原对象未被引用
car2 = null; // 将car2指向null,原对象未被引用
}
}
```
#### 代码总结
- 对象的引用通过引用变量实现,可指向同一对象或不同对象。
- 当对象不再被任何引用变量指向时,对象将成为垃圾对象等待垃圾回收。
#### 结果说明
以上代码执行后,car1、car2、car3指向的对象将会成为垃圾对象等待垃圾回收。
### 3.3 对象的销毁与垃圾回收
Java的垃圾回收器负责回收不再被引用的对象,释放其所占用的内存空间。垃圾回收器的工作由JVM自动完成,开发者无需手动管理对象的销毁。
#### 示例代码
```java
public class Main {
public static void main(String[] args) {
for (int i = 0; i < 10000; i++) {
new Car("Toyota", "Red");
}
System.gc(); // 显示调
```
0
0