2015-08-27 2 views
3

У меня есть класс dwelling, который является обобщением house и building. Эти классы имеют свои собственные свойства, а класс floor представляет собой композицию из building.Моделирование места жительства человека

UML Class Diagram

Я хотел бы связать person класс. Если человек живет в здании, я хочу получить соответствующий этаж. Лучшее решение, которое я нашел, - это импортировать все свойства родительского класса и сделать их допустимыми.

Вопрос: Есть ли более элегантный способ справиться с таким сценарием?

EDIT: Я забыл сказать (и рисовать), что dwelling является абстрактным классом, как :dwelling является либо :building или :house. Поскольку я не могу предсказать, в каком формате будет :person, отношение должно включать только класс dwelling. Но как создать экземпляр, как только я узнаю?

+2

Вы ищете моделирования объектов советы, или как представить этот объект схемы в реляционная база данных? Ваш вопрос, похоже, больше ориентирован на моделирование объектов и, как таковой, не очень подходит для этого сайта. – Erik

+0

Я ищу лучший способ моделирования отношений между классом и унаследованными классами, поэтому это проблема моделирования объектов. Должен ли я опубликовать сообщение о переполнении стека? Благодарю. – Hicham

ответ

0

Может быть что-то вроде этого:

enter image description here

  • Person 's дом является LivingPlace
  • Бетон LivingPlace' s являются House и Apartment
  • Бетон Dweling «s являются House и Building
  • Building имеет Floor 'S, A Floor знает его Building
  • Floor имеет Apartment' S, A Apartment знает его Floor
Смежные вопросы