• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Overriding Constructor

 
little master
Greenhorn
Posts: 3
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,

I am new to Java, can we override a constructor..? and what are the uses of overriding it. is it is a good practice of doing it.

Please help me this was a question asked in interview.
Thanks in adv.

Regards
LM.
 
Rob Spoor
Sheriff
Pie
Posts: 20372
44
Chrome Eclipse IDE Java Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No you cannot override a constructor. You can overload it, but non-static non-final methods are the only members that can be overridden.
 
little master
Greenhorn
Posts: 3
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
public class OverRide {
public OverRide(){
System.out.println("from constructor");
}

}


public class OverRidden extends OverRide {

public void OverRide(){
System.out.println("from OveRidden");
}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
OverRidden or = new OverRidden();
or.OverRide();

}

public void myJob() {
// TODO Auto-generated method stub

}

}

OUTPUT:
from constructor
from OveRidden

i have the above code can you please look into it.
 
Rob Spoor
Sheriff
Pie
Posts: 20372
44
Chrome Eclipse IDE Java Windows
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
1) read your private messages and follow the instructions inside.
2) UseCodeTags
3) that's constructor chaining. That's something completely different from overriding.
 
Darryl Burke
Bartender
Posts: 5115
11
Java Netbeans IDE Opera
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
edit Cross posted
http://forums.sun.com/thread.jspa?threadID=5437288
 
Ernest Friedman-Hill
author and iconoclast
Marshal
Pie
Posts: 24204
34
Chrome Eclipse IDE Mac OS X
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Welcome to JavaRanch!

First, a bit of business: you may not have read our naming policy on the way in. It requires that you use a full, real (sounding) first and last name for your display name. Initials aren't enough. You can change your display name here. Thanks!

Now, as to your question: what you have is a method returning void with the same name as a class. That's not a constructor -- constructors don't have a return type, and you also can't call them directly. You can only call them using "new" or "super". In your OverRide class, that is a constructor.

 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic