Как принять решение о создании нового дочернего класса - PullRequest
0 голосов
/ 25 февраля 2020

У меня есть родительский класс P. У родительского класса есть переменные-члены класса. У меня есть дочерний класс C1, который расширяет P. C1 имеет конечную переменную-член F1. Класс C1 создается из нескольких мест.

Я должен добавить новую пустую конечную переменную F2. Я не могу добавить ее в класс C1, поскольку я не знаю значения F2, из которого создается экземпляр класса C1. Кроме того, я не значение F1, откуда я хочу передать F2

Должен ли я создавать новый дочерний класс C2 расширяет P для добавления F2? Как мне принять решение? Если да: завтра у меня есть требование добавить новую конечную переменную F3 с аналогичными ограничениями, должен ли я создавать другой дочерний класс?

1 Ответ

0 голосов
/ 25 февраля 2020

Вопрос не очень понятен. Можете ли вы показать какой-нибудь код?

Но в целом я думаю, что класс-наследование обусловлено отношениями сущности.

Например, родительский класс Person, у него есть дочерний класс Student. Как мы все знаем, Студен - человек, поэтому эта структура - хороший выбор.
Другой дочерний класс Teacher, он должен быть унаследован от Person, а не Student. Потому что в школе тот, кто является учеником, а также учителем, очень и очень редко.
Так что, если класс Teacher наследует от Student, это странно и не очень хороший выбор.

И я думаю, что blank final variable - это вещи уровня языка.
Я предлагаю не делать наследование классов зависимым от этих вещей.

...