如题,java中所有的类都包含构造方法吗?
构造方法的作用——初始化成员变量。
类作者自己写的构造函数,自然是进行了合理的初始化操作。
如果默认都加一个无参的构造函数,外部就可能调用该构造函数,进而生成一个不符合作者预期的对象(成员变量未被合理初始化)。
除了抽象类和接口不能实例化的情况,普通java类都有默认的无参构造方法,但当自定义了有参构造方法后,默认的无参构造方法失效,此时必须手动定义无参构造方法才能使其生效。
如题,java中所有的类都包含构造方法吗?
构造方法的作用——初始化成员变量。
类作者自己写的构造函数,自然是进行了合理的初始化操作。
如果默认都加一个无参的构造函数,外部就可能调用该构造函数,进而生成一个不符合作者预期的对象(成员变量未被合理初始化)。
除了抽象类和接口不能实例化的情况,普通java类都有默认的无参构造方法,但当自定义了有参构造方法后,默认的无参构造方法失效,此时必须手动定义无参构造方法才能使其生效。