java中为什么要有构造方法?
都说构造方法的作用是初始化对象,可是成员变量创建的时候不是被自动初始化了吗?为什么还要用构造方法再初始化一次?...
都说构造方法的作用是初始化对象,可是成员变量创建的时候不是被自动初始化了吗?为什么还要用构造方法再初始化一次?
展开
3个回答
展开全部
一个对象被创建出来时,经常要先做一些事这个对象才能正常使用,也可以说是准备工作,比如给这个对象赋些初始值,或者先运行一些别的方法。
把那些在创建时要做的事写在构造方法里,每次创建就会被执行一遍。
就你描述的情况,默认构造方法其实就什么都没做啊,但是会有对象创建的时候就要赋值一些成员变量的情况,这种就要自定义构造方法,重载啊。可能你会说为什么非得要构造的时候就赋值呢,不能对象创建出来,set成员变量就得了。原因:1是麻烦。2是会有很多人创建了对象,忘记了set某些成员变量,然后直接去调用对象的别的方法,这时可能就会由于对象未赋值而抛出异常。
把那些在创建时要做的事写在构造方法里,每次创建就会被执行一遍。
就你描述的情况,默认构造方法其实就什么都没做啊,但是会有对象创建的时候就要赋值一些成员变量的情况,这种就要自定义构造方法,重载啊。可能你会说为什么非得要构造的时候就赋值呢,不能对象创建出来,set成员变量就得了。原因:1是麻烦。2是会有很多人创建了对象,忘记了set某些成员变量,然后直接去调用对象的别的方法,这时可能就会由于对象未赋值而抛出异常。
展开全部
你可以不使用构造方法 , 使用构造方法的好处是可以在对象初始的时候就对某些变量赋值等操作,大大的减少 了代码量 , 能减少代码量的东西谁会不用呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
初始化对象的数据和方法甚至是状态。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询