mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6
575 字
1 分钟
JAVA构造方法与对象的创建QAQ
2025-09-09
无标签

一、构造方法(Constructor)#

1. 定义#

构造方法是 一种特殊的方法,主要作用是 在创建对象时对对象进行初始化
构造方法的名字必须和类名相同,且没有返回值(连 void 也不能写)。

2. 特点#

  • 方法名与类名相同;
  • 没有返回值类型声明;
  • 可以有参数,也可以没有参数;
  • 可以重载(即同一个类中定义多个不同参数列表的构造方法)。

3.构造方法的类型#

1.无参构造方法(默认构造方法)#

  • 如果类中没有显式定义构造方法,编译器会自动提供一个无参构造方法。
  • 一旦你自己写了构造方法,系统不会再自动生成。
class Student {
String name;
int age;
// 无参构造
Student() {
name = "未命名";
age = 18;
}
}

2.有参构造方法#

  • 用来在创建对象时直接赋初始值。
class Student {
String name;
int age;
// 有参构造
Student(String n, int a) {
name = n;
age = a;
}
}

二、对象的创建#

在 Java 中,对象是通过 new 运算符 来创建的。
基本格式:

类名 对象名 = new 类名(参数列表);

1. 创建过程#

当执行 new 类名() 时,底层大致经历以下步骤:

  1. 在堆内存中分配空间;
  2. 调用构造方法初始化成员变量;
  3. 返回对象在堆内存中的引用地址,赋值给引用变量。

2. 示例#

public class Test {
public static void main(String[] args) {
// 调用无参构造
Student s1 = new Student();
System.out.println(s1.name + " - " + s1.age);
// 调用有参构造
Student s2 = new Student("张三", 20);
System.out.println(s2.name + " - " + s2.age);
}
}

输出:

未命名 - 18
张三 - 20

Java 对象创建流程

假设代码如下:

Student s = new Student("张三", 20);

3. 内存示意图#

┌───────────────────────────┐
│ 方法区 (Method Area) │
│ ───────────────────────── │
│ 类信息: Student │
│ - 构造方法 │
│ - 成员变量定义 │
│ - 方法代码 │
└───────────────────────────┘
┌───────────────────────────┐
栈 (Stack) │ 局部变量区 │
│ ───────────────────────── │
│ s ────────┐ │
└─────────────│─────────────┘
│ 引用地址
┌───────────────────────────┐
堆 (Heap) │ Student 对象实例 │
│ ───────────────────────── │
│ name = "张三" │
│ age = 20 │
└───────────────────────────┘

📌 理解要点:

  1. 类加载 → 类的信息(构造方法、属性定义)放在 方法区
  2. new Student(…) → 在 中开辟内存,创建对象。
  3. 引用变量 s → 在 中存储对象在堆中的地址。
  4. 通过 s.name / s.age 就能访问堆里的实际数据。

三、this关键字与构造方法#

在构造方法中经常用 this

  1. 区分成员变量和局部变量同名冲突。

    Student(String name, int age) {
    this.name = name;
    this.age = age;
    }
  2. 一个构造方法调用另一个构造方法(必须写在第一行)。

    Student() {
    this("未命名", 18); // 调用有参构造
    }

四、小结#

  1. 构造方法:类名相同、无返回值、可重载。
  2. 对象创建:通过 new 调用构造方法,完成初始化。
  3. this:在构造方法中常用来引用当前对象,或调用其它构造方法。
分享

如果这篇文章对你有帮助,欢迎分享给更多人!

JAVA构造方法与对象的创建QAQ
https://csa.fur1na.top/posts/java构造方法与对象的创建qaq/
作者
fur1na
发布于
2025-09-09
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00