java中的构造器

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

  1. 构造器的定义

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

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

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

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

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

    • 静态代码块:程序启动后执行一次,优先级最高。
    • 构造代码块:每次调用构造方法都会执行一次,优先级低于静态代码块。
    • 构造器:优先级低于构造代码块。
相关推荐
兮兮能吃能睡8 小时前
R语言术语(2)
开发语言·r语言
Pluchon8 小时前
硅基计划4.0 算法 二叉树深搜(DFS)
java·数据结构·算法·leetcode·深度优先·剪枝
whm27778 小时前
Visual Basic 参数传送-形参与实参
开发语言·visual studio
9号达人8 小时前
if-else 优化的折中思考:不是消灭分支,而是控制风险
java·后端·面试
共享家95278 小时前
QT-常用控件(多元素控件)
开发语言·前端·qt
幸运小圣8 小时前
Iterator迭代器 【ES6】
开发语言·javascript·es6
葱头的故事8 小时前
将传给后端的数据转换为以formData的类型传递
开发语言·前端·javascript
不知道累,只知道类8 小时前
Java 在AWS上使用SDK凭证获取顺序
java·aws
咖啡Beans9 小时前
SpringBoot2.7集成Swagger3.0
java·swagger
一念&9 小时前
每日一个C语言知识:C 数组
c语言·开发语言·算法