Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java calling constructor within another [duplicate]

could someone help me with calling the first constructor and putting it in the second and third? I may have some problems with the syntax, it seems...

http://pastebin.com/5x11Mkyy

like image 218
Anshin Avatar asked Dec 09 '22 12:12

Anshin


1 Answers

Your linked example is really long and I'm getting confused by all the non-English comments, so I'll just give you a short example. If you want to call another constructor within a constructor, you just use the this keyword. Here's a sample class that uses this to delegate the work of the "default" (no-arg) constructor to a 1-arg constructor:

public class MyClass {

  public final int X;

  public MyClass() {
    this(1); // Use X=1 by default
  }

  public MyClass(int x) {
    X = x;
  }

}

This technique is covered in Using the this Keyword: Using this with a Constructor in Oracle's Java Tutorials.

like image 107
DaoWen Avatar answered Dec 11 '22 09:12

DaoWen