Java构造函数

Java构造函数是类的特殊方法,用于创建对象时初始化成员变量,方法名必须与类名完全一致,且没有返回值类型(包括void也不能写)。

  1. 默认构造函数

若类中未显式定义任何构造函数,编译器会自动生成一个无参、空实现的默认构造函数;一旦手动定义了构造函数,默认构造函数会失效。

class Student {

String name;

// 编译器自动生成的默认构造函数:Student() {}

}

  1. 构造函数的重载

支持方法重载,即一个类可以有多个构造函数,参数列表(类型、个数、顺序)不同,用于灵活初始化对象。

class Student {

String name;

int age;

// 无参构造

public Student() {}

// 单参构造

public Student(String name) {

this.name = name;

}

// 双参构造

public Student(String name, int age) {

this.name = name;

this.age = age;

}

}

  1. 关键特性

◦ 用new关键字创建对象时,会自动调用对应的构造函数。

◦ 构造函数中可以用this()调用本类的其他构造函数,且该语句必须是构造函数的第一条语句。

◦ 子类构造函数默认通过super()调用父类的无参构造函数,也可手动指定调用父类的有参构造。

  1. 注意事项

◦ 构造函数不能被static、final、abstract、native修饰。

◦ 不能有返回值,也不能写return语句(除非是return;这种空返回)。

相关推荐
karry_k3 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k3 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking7 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩10 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码11 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev13 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波21 小时前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯1 天前
GoF设计模式——备忘录模式
java·后端·spring·设计模式