У меня есть класс, назовем его LineGraph, который отображает линейный граф. Мне нужно подклассифицировать его, но производный класс используется только в одном месте и связан с классом, который его использует. Поэтому я использую внутренний класс.Аноним против названных внутренних классов? - лучшие практики?
Я вижу два способа сделать это:
анонимный внутренний класс
public class Gui {
LineGraph graph = new LineGraph() {
// extra functionality here.
};
}
Названный внутренний класс
public class Gui {
MyLineGraph graph = new MyLineGraph();
private class MyLineGraph extends LineGraph {
// extra functionality here.
}
}
Я не любитель анонимных внутренних классов, потому что, честно говоря, я просто думаю, что это выглядит очень уродливо. Но в случае подкласса, который используется только в одном месте, это именованный внутренний класс overkill? Какова принятая практика?
Лямбда любой :) – Matt