can a static method be overridden
Answers were Sorted based on User's Feedback
Answer / vinay
Hi pals,
I agree with sushant who says that method overriding is not just using same name for the method.
But I want make some things more clear.
first of all Whats Method overriding , giving a new implementation for the parent or base class methods mean while maintaining same method definition.
If thats the case
You can override static methods by all means.
In this case only thing differs is way of accessing the methods , as its static access it by their class name.
And also
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / ashish
Hi All,
static method can never be overridden, to clear your doubt
I have written the following two java files
Base.java -->
public class Base {
public static void method(){
System.out.println("base");
}
}
Child.java -->
public class Child extends Base {
public static void method(){
System.out.println("Child");
}
public static void main(String[] args) {
Base baseObj = new Child();
baseObj.method();
baseObj = new Base();
baseObj.method();
}
}
The class file for Child.java is:
public class Child extends Base
{
public Child()
{
}
public static void method()
{
System.out.println("Child");
}
public static void main(String args[])
{
Base baseObj = new Child();
Base.method();
baseObj = new Base();
Base.method();
}
}
As you can see in case of static method object got replaced
by Class Name(here Base).
And i believe you all are aware of fact that overridden is
the case when resolution is done at Runtime.
But since in our case calling is decided at compile time,
so there is no case of overridden.
Do let me know, if you have further query
| Is This Answer Correct ? | 0 Yes | 1 No |
what is the RMI / IIOP?
how can u cal servlet from java?
How are commas used in the intialization and iteration parts of a for statement?
How database connectivity in XML is achieved?
whats is mean by class.forName() whats the return type of class
What is a clone?
Where can I ask questions and make suggestions about seam?
What method is invoked to cause an object to begin executing as a separate thread?
What is the highest-level event class of the event-delegation model?
Will it be called overriding if I do not change the parameters or return type, instead throw a different exception in the method signature.
What are the purpose of introspection?
how we can implement interface in jsp ?