java中的构造器

Java 中的构造器(也称为构造方法)是一种特殊的方法,用于初始化对象的状态。在创建 Java 类的实例时,构造器会被自动调用。

  1. 构造器的定义

    • 构造器的名称必须与类名完全相同。
    • 构造器没有返回值类型,甚至不包括 void
    • 构造器通常用于实例化对象并赋予初始值。
  2. 默认构造器

    • 如果我们没有手动定义构造器,Java 系统会提供一个默认的无参构造器。
    • 这就是为什么即使没有定义任何构造器,我们仍然可以使用 new 类名() 来实例化对象。
  3. 禁止对象被外部创建

    • 有时我们不希望某个类的对象被外部创建(例如单例模式)。
    • 可以将构造器的修饰符改为 private,这样就不能在外部通过 new 来创建该对象了。
  4. 构造器重载

    • 与普通方法一样,构造器也支持重载。
    • 一个类中可以同时定义多个构造器,通过不同的参数列表来实现重载。
    • 例如:new People()new People("张三") 就是构造器重载。
  5. 构造器的继承

    • 子类构造器会默认调用父类的无参构造器。
    • 如果父类没有无参构造器,则必须在子类构造器的第一行使用 super 关键字指定调用父类的哪个构造器。
  6. 构造器、静态代码块、构造代码块的执行顺序

    • 静态代码块:程序启动后执行一次,优先级最高。
    • 构造代码块:每次调用构造方法都会执行一次,优先级低于静态代码块。
    • 构造器:优先级低于构造代码块。
相关推荐
小陈工1 小时前
Python安全编程实践:常见漏洞与防护措施
运维·开发语言·人工智能·python·安全·django·开源
majingming1237 小时前
FUNCTION
java·前端·javascript
zopple7 小时前
常见的 Spring 项目目录结构
java·后端·spring
是娇娇公主~7 小时前
C++ 中 std::deque 的原理?它内部是如何实现的?
开发语言·c++·stl
SuperEugene8 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
xuxie999 小时前
N11 ARM-irq
java·开发语言
cjy0001119 小时前
springboot的 nacos 配置获取不到导致启动失败及日志不输出问题
java·spring boot·后端
wefly20179 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
zhenxin01229 小时前
Spring Boot实现定时任务
java
小江的记录本10 小时前
【事务】Spring Framework核心——事务管理:ACID特性、隔离级别、传播行为、@Transactional底层原理、失效场景
java·数据库·分布式·后端·sql·spring·面试