I have started java a month ago. And I have a little concept of some basic C++. Now while studying classes I came across a method this()whose logic, I don't seem to pick up. Can anybody please
I was a born genious, but java ruined me.
Roy Ben Ami
Ranch Hand
Joined: Jan 13, 2002
Posts: 732
posted
0
it makes sense since you come from c++ you wouldnt get that method. java uses the this() method so u can call one constructor from another constructor. you cant do that in c++ but it looks for exmaple like this:
you get the idea? you can call one constructor from another in the same class to save some code writing (if the constrcutors have a simliar code to be written). this() without anything as parameter calls the empty constructor in the class. just as a last note. this() must be the first line in the constructor you are using and you can't have super() with it. [ April 29, 2002: Message edited by: Roy Ben Ami ] [ April 29, 2002: Message edited by: Roy Ben Ami ]
Khurram Ajmeri
Greenhorn
Joined: Nov 24, 2001
Posts: 6
posted
0
hello there this() is used for constructor chaining for example..if u want to call a single argument constructor from within a zero argument constructor. class Tiger{ Tiger(){ this(6); //must be the first line of a } //constructor!
Tiger(int i){ System.out.println("Tiger"); } }
if u are still confuse please read the book.
Jackie Wang
Ranch Hand
Joined: Apr 18, 2002
Posts: 315
posted
0
Can anyone help me about and give me a short example about the difference between this() and super? thanks so much! =) coz I am stil lconfused after reading the teh contructor call for this and super
Jackie Wang
Ranch Hand
Joined: Apr 18, 2002
Posts: 315
posted
0
I mean i still don't understand after reading some notes about the contructor call, it make me more confused
Originally posted by jackie Wang:
coz I am stil lconfused after reading the teh contructor call for this and super
Marilyn de Queiroz
Sheriff
Joined: Jul 22, 2000
Posts: 9033
10
posted
0
"this" is for the same class. "super" is for the class that the "this" class extends (inherits from), in other words, its "super" class.
JavaBeginnersFaq "Yesterday is history, tomorrow is a mystery, and today is a gift; that's why they call it the present." Eleanor Roosevelt
the one major rule with this() and super() is that it has to be the FIRST statement in the constructor definition (if you're using it). -- so because of that -- you can't use both this() and super() in the same definition.
Jackie Wang
Ranch Hand
Joined: Apr 18, 2002
Posts: 315
posted
0
thanks jessica and Marilyn for the prompt reply. I really appreciated that. Any simple example which can demonstrate the "super()"? Thanks so much