How are this() and super() used with constructors?
Answers were Sorted based on User's Feedback
Answer / ranganathkini
this() - is used to invoke one constructor from another
constructor.
super() - is used to invoke the super class's constructor
from the subclass's constructor
Is This Answer Correct ? | 21 Yes | 2 No |
Answer / ramanareddy333
this()refers the current constructor and
super() refers the super class constructor
Is This Answer Correct ? | 18 Yes | 1 No |
Answer / ravikiran(aptech mumbai)
this() is used to call constructors wih in same class where
as super() is used to call the constructors of it's super class
Is This Answer Correct ? | 16 Yes | 3 No |
Answer / sunil kishore balla
super() is used to invoke a super class constructor and
this() is used to invoke a constructor of the same class
Is This Answer Correct ? | 11 Yes | 2 No |
Answer / qim2010
this() is used to invoke a constructor of the same class
super() is used to invoke a super class constructor and
Example of using this():
public Pet(int id) {
this.id = id; // “this” means this object
}
public Pet (int id, String type) {
this(id); // calls constructor public Pet(int id)
this.type = type; // ”this” means this object
}
Example of using super():
If a class called “SpecialPet” extends your “Pet” class then
you can
use the keyword “super” to invoke the superclass’s
constructor. E.g.
public SpecialPet(int id) {
super(id); //must be the very first statement in the
constructor.
}
To call a regular method in the super class use:
“super.myMethod( );”. This can be called at any line.
Is This Answer Correct ? | 3 Yes | 1 No |
Answer / sushila sonare
When we create an object, first constructor called. In a
constructor first statement should be either this() or
super(). If we didn't keep anything compiler kept super()
statement so constructor chain will be completed. Control
goes to Object class constructor and object creation will
completed. Suppose this() statement kept in constructor than
current class suitable constructor called and this chain
will be continue until control goes to Object class
constructor.
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / rajesh
this() class refer to current class constructor;
super() refers to base class.
Is This Answer Correct ? | 3 Yes | 2 No |
Answer / ritesh kesharwani
this refer to constructor under whose context the behavior
is called.
and super always used to invoke the argument and no argument
constructor of the super type and if super is used under the
constructors it should be the first argument.
Is This Answer Correct ? | 1 Yes | 3 No |
Answer / bhadresh
this() use to invoke only same class constructor.
super() use to invoke super class constructor.
Is This Answer Correct ? | 0 Yes | 3 No |
what is recursion in java
Why are constructors used?
What will be the initial value of an object reference which is defined as an instance variable?
What is exception handling in java?
What is the difference between Resultset and Rowset.
What happens if an exception is throws from an object's constructor?
What does the exclamation mark mean in java?
Why does java have two ways to create child threads?
What are different data types?
Is java util list serializable?
How can I become a good programmer?
What is a treemap in java?