java中的构造器

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

  1. 构造器的定义

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

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

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

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

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

    • 静态代码块:程序启动后执行一次,优先级最高。
    • 构造代码块:每次调用构造方法都会执行一次,优先级低于静态代码块。
    • 构造器:优先级低于构造代码块。
相关推荐
后端AI实验室2 小时前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai
程序员清风3 小时前
小红书二面:Spring Boot的单例模式是如何实现的?
java·后端·面试
belhomme4 小时前
(面试题)Redis实现 IP 维度滑动窗口限流实践
java·面试
Be_Better4 小时前
学会与虚拟机对话---ASM
java
开源之眼6 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
Maori3167 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
用户908324602737 小时前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋7 小时前
DecimalFormat 与 BigDecimal
java·后端
beata8 小时前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端
IT探险家8 小时前
你的第一个 Java 程序就翻车?HelloWorld 的 8 个隐藏陷阱
java