Can we override static methods?
Answer Posted / shailesh
Hi, we can overried the static method as well as we can
overload them. The exam which you have given is wrongly
interpreted. Never try to access the static method with the
instance variable, it can create confusion.
In the Foo, Bar example if you do like this
Foo f = new Bar();
and call f.(some staic method). It will always call the
static method of Foo (but not of Bar). Check the java docs.
So just modify the code like this
class Foo {
public static void classMethod() {
System.out.println("classMethod() in Foo");
}
public void instanceMethod() {
System.out.println("instanceMethod() in Foo");
}
}
class Bar extends Foo {
public static void classMethod() {
System.out.println("classMethod() in Bar");
}
public void instanceMethod() {
System.out.println("instanceMethod() in Bar");
}
}
class Test {
public static void main(String[] args) {
class Foo {
public static void classMethod() {
System.out.println("classMethod() in Foo");
}
public void instanceMethod() {
System.out.println("instanceMethod() in Foo");
}
}
class Bar extends Foo {
public static void classMethod() {
System.out.println("classMethod() in Bar");
}
public void instanceMethod() {
System.out.println("instanceMethod() in Bar");
}
}
class Test {
public static void main(String[] args) {
Foo f = new Foo();
f.instanceMethod();
Foo.classMethod();
Foo b = new Bar();
b.instanceMethod();
Bar.classMethod();
}
}
If you run this, the output is
instanceMethod() in Foo
classMethod() in Foo
instanceMethod() in Bar
classMethod() in Bar
| Is This Answer Correct ? | 3 Yes | 2 No |
Post New Answer View All Answers
How to reverse a string in java?
What are the 3 types of control structures?
whar are the draw backs of programming lang step by step in Clang and next in C++ and next and in Java nad in .Net
What is difference between equals and hashcode method?
What is anagram of a string?
Can a constructor be made final?
Is math class static in java?
What is the constructor?
Which one will take more memory: an int or integer?
Lowest Common ancestor in a Binary Search Tree and Binary Tree.
Explain different ways of creating a thread. Which one would you prefer and why?
java program with complete 4 oops concepts implemented example
How thread scheduler schedule the task?
Can we write any code after throw statement?
how to create multithreaded program? Explain different ways of using thread? : Java thread