I have this example:
public class Inheritance {
public static class Animal {
public void Scream() {
System.out.println("I'm an animal");
}
}
public static class Mammal extends Animal{
public void Scream(){
System.out.println("I'm a mammal");
}
}
public static class Tiger extends Mammal{
public void Scream(){
System.out.println("I'm a tiger");
}
}
public static void main (String[] args){
Animal tiger = new Tiger();
tiger.Scream();
}
}
Of course, I will receive: “I’m a tiger”. But, I don’t know how to print “I’m a mammal” or “I’m an animal”
@: and please answer for me sub-question: in case Tiger class, What is superclass of Tiger. Mammal or Animal ?
Please help me 🙂
Thanks ::)
In method overriding, java will always check whose object has been created at run time. If you wanna a print “I’m a mammal”:
this will print “I’m a mammal”.
And if you wanna a print “I’m a animal”: