in a constructor what happen if u call super and this in
the same class? i know that it is not possible to call
both in the same one? if we call what will happen?
Answers were Sorted based on User's Feedback
Answer / madhu
We can't give both super() and this()in a constructor,
because both of these statements must be the first
statements in constructor. if you give super() as the first
statement then compiler error will come with this() call.
and vice versa.
but you can call the members with both super and this in a
constructor. here is the code.
class Base
{
Base()
{
System.out.println("Base constructor");
}
void m1()
{
System.out.println("m1 of Base");
}
}
class Derived extends Base
{
Derived()
{
super();//it is ok.
this();//raises compiler error
//but we can call the members with super and this
super().m1();//make sure that super()in
line must be marked comment
this().m1();
System.out.println("Derived constructor");
}
void m1()
{
System.out.println("m1 of Derived");
}
public static void main(String[] args)
{
Derived d=new Derived();
}
}
it works out
| Is This Answer Correct ? | 9 Yes | 3 No |
Answer / srikant bhat
it wil giv an exception -compiler exception
| Is This Answer Correct ? | 9 Yes | 4 No |
Answer / agile being
The question clearly specifies "what happen if u _CALL_
super and this in the same class"
By call, probably, they mean:
this(); /*Invoking the constructor*/
super(); /*Invoking the parent class's constructor*/
I think the right answer is that it will raise a compiler
exception. Such a program will not compile.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / george
super and this will use first line of constructor so we cant
use it...i ll show error
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / raja
It Works fine with out any Exceptions,because in java each
and every class is inherited from the object class indirectly...
public class consex
{
public consex(String a)
{
super();
System.out.println(a);
}
public static void main(String dd[])
{
consex c=new consex("raja");
}
}
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / jyotshna pardhia
In a constructor if we call super and this in
the same class than we will get compile time error saying
that call to this() must be the first statement of the
construtor OR call to super() must be the first statement
of the constructor.So it is not possible to call
both in the same one.
Ex:-1
class Test
{
Test()
{
super();
this();
systm.out.println("hello Jyotshna");
}
}
error:- call to this() must be the first statement of
constructor.
Ex:-2
class Test
{
Test()
{
this();
super();
systm.out.println("hello Jyotshna");
}
}
error:- call to super() must be the first statement of
constructor.
Thanks & Regards
jyotshna
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / atul
class A
{
public A()
{ super();//this is perfect no error
super();//but this call generate RunTimeException
//because inside constructor super called
//must be in first called ok thats it
}
public static void main(String args[])
{
A a1=new A();
}
}
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / ajay dhingra
It will run fine with no exception here is the example :
public class CheckException extends Thread{
public CheckException(){
super.start();
this.start();
}
@Override
public synchronized void start() {
// TODO Auto-generated method stub
super.start();
}
}
| Is This Answer Correct ? | 3 Yes | 7 No |
Can a constructor have different name than a class name in java?
what is business delegate?
How can we access some class in another class in java?
What are the steps involved to write rmi based programs?
Explain the difference between intermediate and terminal operations in java8?
What is factor r?
Can a constructor be private and how are this() and super() method used with constructor?
0 Answers Flextronics, Hexaware,
What is independent and dependent variables in research?
How many bytes is a string java?
what is meant by Byte code concept in Java?
What is super in java?
What we have to do, when we don't want to implement all methods of an interface?