无参构造和有参构造的作用与区别

本文详细介绍了Java中的构造方法,包括其定义、作用及区别。解释了构造方法如何用于类的初始化和实例化,并探讨了有参数与无参数构造方法的不同用途。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概念

  • java中构造方法指的是:      

  • 与类名相同,无返回类型的方法,参数可以为空,也可以带参数。

  • 比如一个 Dao 类,private Dao(){}这个就是无参数的构造方法。

  • private Dao(String name){}这个就是带参数的构造方法。

  • 作用:用来初始化 java 类,提供类的初始化和实例化,以便调用。

二、作用

new一个对象的时候要用到构造函数,例如Hello hello = new Hello();这时调用的是Hello的无参数构造方法; Hello hello = new Hello(“hi”); 这个是调用Hello有参数构造方法,在JAVA中如果不写构造方法的话,会默 认加上一个无参数的构造方法,但是如果已经有了一个有参数的构造方法, 那么无参数的构造方法就不会默认被加上.如果Hello类中已经有了一个有参数的构造方法,这时再使用Hello hello = new Hello();来创建对象的 时候就会出错,这就是为什么书上要强调写了有参数的构造方法就最好加一个无参数的构造方法。

三、区别

  • 有参数的构造方法的主要目的是为类中的属性初始化的,而无参数的构造方法,可以控制new对象。

  • 假设你的无餐构造方法不是public 修饰 而是private ,

  • 那么别人将不只能直接new一个对象,这就起到了控制作用。

  • 为什么要自动生成无参构造呢?

  • 你没有构造方法就不能new出对象 所以就给你生成一个无参构造方法

  • 一般构造方法就是来控制你new对象的 还有就是初始化属性

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值