为什么在JAVA中构造方法的重载需要同时创建有参数的和没参数的两种构造方法!只创建有参的不就行吗?

2025-05-21 04:51:33
推荐回答(3个)
回答(1):

您好,提问者:
    这个可以的,但是有局限性,例如:

public class TestDemo{
    //public TestDemo(){} //无参的 注释掉先
    public TestDemo(String name){} //有参的
    public static void main(String[] args){
        //如果我们只设定有参的,那么一下代码就会报错
        TestDemo t1 = new TestDemo(); //因为没有无参的构造方法
        TestDemo t2 = new TestDemo("小童鞋_成er"); //如果只有无参,没有有参数,报错
        //所以视情况而定,如果重写了构造方法,最好建议加上无参的构造方法。
    }
}

回答(2):

。。。你这问题简直碉堡了!!~~
构造方法public User()叫无参构造方法,
构造方法public User(Stirng name)叫有参构造方法,
它们俩之间的关系叫重载!
假如你的User类,本来就只有一个构造方法,请问这个构造方法跟谁重载去?
而且,并不是有参无参叫重载。两个有参也可以叫重载。
例如:public User(Stirng name)和public User(Stirng name,int age)

回答(3):

如果创建一个不需要参数的实例,就不行了。。所以需要一个空的无参数构造和有参数构造