aspose file tools*
The moose likes Java in General and the fly likes Why an Interface cannot have a Constructors ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "Why an Interface cannot have a Constructors ?" Watch "Why an Interface cannot have a Constructors ?" New topic
Author

Why an Interface cannot have a Constructors ?

devasis majhi
Greenhorn

Joined: Dec 29, 2012
Posts: 9
Why an Interface cannot have a Constructors ?

If the answer is we can not create an object of an Interface then why it not applicable to abstract class. Though we cannot create an abject of abstract class still we can define Constructors in side it which can be called from subclass constructors by using super keyword. Why cant we do the same for interfaces?
Jayesh A Lalwani
Bartender

Joined: Jan 17, 2008
Posts: 2066
    
  22

The job of the constructor is to initialize the member variables. Abstract class can have member variables. Interface doesn't. So, Abstract class can have constructor. Interface doesn't need constructor. Nothing to intialize; No constructor required
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 36599
    
  16
And welcome to the Ranch
devasis majhi
Greenhorn

Joined: Dec 29, 2012
Posts: 9
The job of the constructor is to initialize the member variables. Abstract class can have member variables. Interface doesn't.


Not completely agree with it. Even Interface can have member but those are static and final by default which can not be initialized in a constructor. Probably that is is the reason we don't have constructors in Interface.
Correct me if I am wrong.
Jayesh A Lalwani
Bartender

Joined: Jan 17, 2008
Posts: 2066
    
  22

You got it.

And 1 boogala point for the nitpick :-p
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Why an Interface cannot have a Constructors ?
 
Similar Threads
what is the difference between
Why protected method possible in Abstract class but in Interface it is not
Static Methods in an Interface
Use of constructor in abstract class?
can we creat an instance of an interface?