当前位置: 首页 > news >正文

【Java 基础】 2 面向对象 - 构造器

- 第 149 篇 -
Date: 2025 - 11- 16
Author: 郑龙浩(仟墨)

【Java 基础】

2 面向对象 - 构造器

2.1 构造器介绍

和方法的创建方法类似,其实构造器就是一种特殊的方法

满足以下条件:

  • 在类中创建
  • 没有返回值类型
  • 构造器名字类名必须保持一致
  • 可以增加参数

下面就是一个简单的构造器(无参数构造器)

// ====== Student.java文件 ======
public class Student {// 构造器public Student() {}
}

2.2 无参数构造器 | 有参数构造器

constructor:构造器

  • 不写构造器,则**「类」默认有一个无参构造器**
  • 只要在类中定义了>=1个有参构造器默认的无参构造器就会消失,此时必须手动创建「无参构造器」,否则无法使用无参构造器
// ====== Student.java 文件======
package zhenglonghao.constructor;public class Student {// 1 无参构造器(如果设置了有参构造器,则必须设置无参构造器,因为默认的构造器将不能被调用)public Student() {}// 2 有参构造器(姓名)public Student(String name) {}// 3 有参构造器(姓名和年龄)public Student(String name, int age) {}
}

2.3 创建「对象」时,对象会自动调用「构造器」

用下面代码证明创建对象时,对象会自动调用「构造器」

利用这个特性,可以在有参数构造器中,自动对成员初始化

Test.java文件

// ====== Student.java 文件======
package zhenglonghao.constructor;public class Test {public static void main(String[] args) {// 使用无参构造器创建对象Student s1 = new Student();// 使用有参构造器创建对象(传入参数ZLH,20分别到n与a)// 创建对象的时候,可以立即为对象赋值Student s2 = new Student("ZLH", 20);System.out.println("姓名: " + s1.name);System.out.println("年龄: " + s1.age);        
}

Student.java文件

// ====== Student.java 文件======
package zhenglonghao.constructor;public class Student {String name;int age;char sex;// 1 无参构造器(如果设置了有参构造器,则必须设置无参构造器,因为默认的构造器将不能被调用)public Student() {}// 2 有参构造器(姓名)public Student(String n) {name = n; // 将传入的参数赋值给name}// 3 有参构造器(姓名和年龄)public Student(String n, int a) {name = n;age = a;}
}
http://www.dtcms.com/a/617728.html

相关文章:

  • dw6做网站linux做网站服务器那个软件好
  • 生成式人工智能赋能教师专业发展的机制与障碍:基于教师能动性的质性研究
  • 无锡锡山区建设局网站北京网站定制建设
  • 【Word学习笔记】Word如何转高清PDF
  • 小程序地图导航,怎样实现用户体验更好
  • 下流式接入ai
  • PDF无法打印怎么解决?
  • 南宁市网站建设哪家好企业网站模板html
  • 华为数据中心CE系列交换机级联M-LAG配置示例
  • 【HarmonyOS】性能优化——组件的封装与复用
  • 低代码平台的性能优化:解决页面卡顿、加载缓慢问题
  • 开源工程笔记:gitcode/github与性能优化
  • 微页制作网站模板手机上自己做网站吗
  • 基于51单片机的8路简易抢答器
  • Java设计模式精讲从基础到实战的常见模式解析
  • 柯美C654e打印机扫描复印有点画,怎么解决?
  • Vibe Coding之道:从Hulk扩展程序看Prompt工程的艺术
  • 【语义分割】12个主流算法架构介绍、数据集推荐、总结、挑战和未来发展
  • 宜兴市的城乡建设管理局网站泉州全网营销
  • Spring中使用Async进行异步功能开发实战-以大文件上传为例
  • 网络安全 | 深入解析XSS攻击与防御实战
  • 怎么做宇宙网站为何有的网站打不开
  • 做的网站文字是乱码wordpress upgrade文件夹
  • day1江协科技
  • Java案例拆解:junit/jvm一步到位
  • **论文初稿撰写工具2025推荐,高效写作与智能辅助全解析*
  • 三级供应链竞合博弈模拟
  • Apache Doris 自动分区:如何应对分布式环境下的复杂并发挑战|Deep Dive
  • 岭回归——附MATLAB代码
  • 深入分析线程池