Действительно ли Анонимные классы являются плохой идеей?

Вы можете использовать Array.from():

const ageData = Array.from(
    {length: 71}, (_, i) => ({value: i + 10})
);

console.log(ageData);
.as-console-wrapper { max-height: 100% !important; top: 0; }

8
задан sblundy 6 November 2008 в 16:27
поделиться

4 ответа

Преимущество состоит в том, что это - реализация закрытий. Это неуклюже, но лучше, чтобы мы вошли в Java в данный момент. Другими словами, Вы не должны создавать новый класс только ради сохранения некоторого состояния, которое Вы уже получили как локальная переменная где-нибудь.

У меня есть статья, сравнивающая C# и закрытия Java, и почему они полезны во-первых, который мог бы помочь.

13
ответ дан 5 December 2019 в 08:26
поделиться

Хорошо я обычно только использую его при необходимости в реализации интерфейса для единственной цели (и интерфейса с немногими функциями или кодом потому что действительно быстро ужасный)... как в следующем примере:

this.addListener(new IListener(){
    public void listen() {...}
});
4
ответ дан 5 December 2019 в 08:26
поделиться

Я обычно ограничиваю анонимные классы всего несколькими строками. Что-либо дольше, чем, говорят 5, делает именованный класс.

1
ответ дан 5 December 2019 в 08:26
поделиться

Я рекомендую Вам эту статью, которую я нашел очень поучительным.

Вы говорите, что заключительное ключевое слово повсеместно, но с локальным классом все еще необходимо передать состояние класса включения, который может также быть плохим для удобочитаемости.

1
ответ дан 5 December 2019 в 08:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: