开发者

Constructor with fewer arguments from a constructor

I have Constructor Tree(int a, int b, int c) and second Constructor Tree(int a, int b, int c, String s). How to load second constructor from first just to save writing all the logics? I thought about something like this but it gives me 'null' object.

public Tree(int a, int b, int c){
    Tree t开发者_Python百科1 = new Tree(a, b, c, "randomString");
}


The magic word is this, e.g.

public Tree( int a, int b, int c, String d ) {
    // Do something
}

public Tree( int a, int b, int c ) {
    this( a, b, c, "randomString" );
}


public Tree(int a, int b, int c){
    this(a, b, c, "randomString");
}


in the first line of a constructor, you can call another constructor:

public Tree(int a, int b, int c, String s)
{
}

public Tree(int a, int b, int c)
{
    this(a,b,c,"someString");
}


You can simply call the other constructor directly, using the keyword this to refer to the class containing the method. So, what you want is:

public Tree(int a, int b, int c){
    this(a, b, c, "randomString");
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜