Я хотел бы узнать причину, по которой это впервые разрешено в Java (или, в общем, упс). Я помню, что статические методы являются общими для родительского и дочернего классов
public class Redefine extends Parent{
public static void test () {
}
}
class Parent{
public static void test () {
}
}
Q1: Поскольку переопределение не поддерживается для статических методов, как оба класса могут содержать одни и те же методы?
Q2: Если изменить метод в static, чтобы генерировать не определенное исключение, его не компилируется,почему так.Это явно не переопределение, поэтому мне нужно разрешить выдавать новые исключения, верно?
public class Redefine extends Parent{
public static void test () throws Exception{
}
}