当前位置:网站首页 > 技术博客 > 正文

java有参构造和无参构造



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 修饰 而是project ,
那么别人将不只能直接new一个对象,这就起到了控制作用。
为什么要自动生成无参构造呢?
你没有构造方法就不能new出对象 所以就给你生成一个无参构造方法
一般构造方法就是来控制你new对象的 还有就是初始化属性




很显然,构造器的最大用处就是在创建对象时,对对象的实例进行初始化,那么构造器又分为有参构造和无参构造,下面我们就通过代码来理解有参和无参构造。

 
  

我们可以new出来对象

在这里插入图片描述

下面我们来看下,如果我们创建一个有参构造的话,是否可以new出来无参的对象

 
  

可以看到我们只有有参构造的时候是无法new出来无参的对象的
在这里插入图片描述

此时我们再创建一个无参构造器,发现我们new的无参对象不报错了,

 
  

执行结果如下
在这里插入图片描述

版权声明


相关文章:

  • 文件对比工具安卓版2025-07-07 23:30:04
  • python安装pyside22025-07-07 23:30:04
  • rsa是哪种加密方式2025-07-07 23:30:04
  • ldap服务搭建2025-07-07 23:30:04
  • gbdt模型原理2025-07-07 23:30:04
  • 条形码和二维码的工作原理2025-07-07 23:30:04
  • oracle游标的使用2025-07-07 23:30:04
  • socks5代理原理2025-07-07 23:30:04
  • 计算机网络常见的硬件设备有哪些2025-07-07 23:30:04
  • python迭代器详解2025-07-07 23:30:04