Hi! Static methods are part of class not the object. Meaning that they can't be overridden, only redefined. Why then they obey the rule of overriding like method can't throw more or broader exceptions and can't return type other than in parent class (if arguments are the same). Or this question doesn't have answer other than "Sun decided to do so".