- Static members from superclass are not inherited to the sub class.
 - Static methods cannot be overridden in the subclass.
 - Same method can be redefined in the subclass, thus hiding the superclass method
 
package com.ibytecode.keywords.staticdemo;
class Person
{
	public static void print() { 
		System.out.println("Person");
	}
}
class Student extends Person
{
	public static void print() { 
		System.out.println("Student");
	}
}
public class StaticInheritance {
	public static void main(String[] args) {
		Person[] persons = {new Person(), new Student()};
		for(int i = 0; i<persons.length; i++)
			persons[i].print();
	}
}
Person
Person
We are trying to invoke a static method, persons[i].print(),and the compiler substitutes persons[i] with Person and hence we get Person.print().
							
