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 |
Is it possible to define a method in java class but provide it’s implementation in the code of another language like c?
What is lambda expression in java?
what is aberivation of java?
Tell me the Importent classes in net package?
23. Storage space in java is of the form Stack Queue Heap List 24. What is java code embedded in a web page known as Applets Servlets scriptlets snippets 25. Which of the following attributes are compulsory with an <applet> tag?. code,height & width. 26. What does 'CODEBASE' in an applet tag specify?. Files absolute path.
What is passing value java?
What is the primitive type short?
What is the difference between length and size in java?
What is tostring () method?
Why strings in java are called as immutable?
What are the advantages of defining packages in java?
How is it possible in java programming for two string objects with identical values not to be equal under the == operator?