Почему я не могу создать новый метод в анонимном внутреннем классе?

Если у меня есть следующий класс:

public class TestObject {
  public String Hooray() {
    return "Hooray!";
  }
}

Я могу, очевидно, создать экземпляр объекта, и я знаю, что должно происходить какое-то подклассирование, так как я могу переопределить метод Ура, но если естьподклассы, почему можноя создаю новый метод внутри анонимного класса?

TestObject a = new TestObject() {
    public String Boo() {
        return "Booooo";
    }
};

System.out.println(a.Boo());

возвращает синтаксическую ошибку

Ответы на вопрос(3)

Ваш ответ на вопрос