Java中常见三类构造函数:①无参构造函数,用于默认初始化或JavaBean规范;②有参构造函数,支持重载以实现灵活初始化;③私有构造函数,限制实例化,常用于单例或工具类。
Java中并没有严格定义“三种类型”的构造函数,但根据常见用法和语义,开发者通常将构造函数按 访问修饰符、参数数量与作用 归纳为以下三类,便于理解与实践:
不接收任何参数的构造函数。若类中未定义任何构造函数,编译器会自动提供一个无参的默认构造函数;一旦定义了其他构造函数,该默认构造函数就不再自动生成,需手动添加。
{ this.name = "unknown"; }
接收一个或多个参数,用于在对象创建时直接完成字段初始化。可有多个,通过参数类型、个数或顺序不同实现重载。
使用 private 修饰,禁止外部 new 实例,常用于单例模式、工具类或构建器模式中。
本质上,构造函数只有“有参”和“无参”之分,而“私有”属于访问控制层面的分类——这三者是从不同角度归纳的常用模式,不是语法上的独立类型。写代码时按需组合即可,比如私有无参、公有有参都很常见。
基本上就这些。