JavaBean 中的类成员变量都是 private 修饰的,有参构造器根本无法将参数的值 赋给成员变量,且JavaBean中都有set/get了,真不知道有参构造存在的意义是什么?无参构造的话,不是编译器会自动创建吗,是不是代表我可以不写构造器?
类默认会有一个无参的构造器(即使你不写的会,也会有),当你写了一个有参的构造器后,默认无参的构造器会被覆盖掉,除非你再显示写一个无参构造。有参构造器可以将一些在实例化时就必须要传的属性通过构造器传入,这样可以避免那些必须的属性被漏掉,因为你不传入构造器需要的参数,你就无法实例化。
首先,构造器可以给private成员变量赋值,private修饰是为了变量只可以本类内部访问;构造器是为了创建类对象,无参的在创建对象时不操作变量,有参操作变量,默认会有无参构造,写代码时不用关注,只有需要在创建对象时对变量操作时,去重写有参或者无参构造。
作用不一样。你可以用一个带参的构造器在实例化的过程中初始化相应的属性,相反,只有在有了对象实例化了才能进行get&set操作。