method overriding
Java
A method defined in a super class may be overridden by a method of the same name defined in a sub class. The two methods must have the same name and number and types of formal arguments. Any checked exception thrown by the sub class version must match the type of one thrown by the super class version, or be a sub class of such an exception. However, the sub class version does not have to throw any exceptions that are thrown by the super class version. It is important to distinguish between method overriding and method overloading. Overloaded methods have the same names, but differ in their formal arguments. See overriding for breadth, overriding for chaining and overriding for restriction.