2015-07-07 1 views
0

У меня возникли проблемы с тем, чтобы использовать, производные классы или отношение много к одному.Когда использовать наследование или отношения класса?

Например, я хотел бы иметь класс породы со средними данными, относящимися к породе, а затем я хотел бы иметь класс Собака для отдельных данных собаки, которые могут относиться к породе для средних данных. Насколько я понимаю, я могу это сделать либо с наследованием класса, либо с отношением «много к одному». Но я не совсем уверен, что нюансы между двумя, которые заставят меня отдать предпочтение друг другу.

+0

Не будет ли собака * экземпляром *, а не * подклассом * своей породы? – jonrsharpe

+0

Вы должны использовать только наследование, когда ребенок является особым видом его родителя. Например, манго - это особый вид фруктов. Итак, Манго может быть подклассом Fruit – Muctadir

+0

Ну не обязательно. Потому что, например, я бы хотел, чтобы у Породы был список цветов пальто, связанных с этой породой, а затем Собака имела фактические цвета пальто для этой отдельной собаки. –

ответ

2

Как правило, наследование представляет собой «отношение» и «отношение» к «имеет». Является ли собака породой? На самом деле, нет. Порода - это свойство или свойство собаки, у собаки есть породы. В этом случае наследование не подходит.

Смежные вопросы