Примечание. Я не задаю вековой вопрос о том, почему внешние переменные, к которым обращаются в анонимном классе, должны быть объявлены окончательными.
При создании анонимного класса в Java вы можете добавить дополнительные методы, если хотите:
Runnable r = new Runnable() {
public void run() {
internal();
}
public void internal() {
.. code ..
}
};
Однако Java также позволяет объявлять дополнительные методы как final
:
public final void internal() { ... }
Мой вопрос: Не эффективны ли эти методы окончательно и добавляет ли ключевое слово final
?