Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
// Superclass
class Base {
// Subclassta gizli kalacak static metod.
public static void display() {
System.out.println("Base class icerisindeki static metod.");
}
// Subclassta override edilecek non-static metod.
public void print() {
System.out.println("Base class icerisindeki non-static metod.");
}
}
// Subclass
class Derived extends Base {
// Bu metod Base sınıfındaki display() metodunu saklar.
public static void display() {
System.out.println("Subclass icerisindeki static metod.");
}
// Bu metod Base sınıfındaki print() metodunu override etti.
public void print() {
System.out.println("Subclass icerisindeki non-static metod.");
}
}
// Driver class
public class Test {
public static void main(String args[ ]) {
Base obj1 = new Derived();
// Ovveride kurallarına göre bu metod Derive sınıfı içerisinde static
// metodu çağırmalıydı. Static metod override edileyemeceği içerisinde
// Base sınıf içerisindeki display() metodunu çağırır.
obj1.display();
// Burada overriding çalışır ve Derive sınıfının print() metodu çağırılır.
obj1.print();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment