2012-04-01 5 views
1

Я попытался сделать это как можно проще. Мне интересно, какой график, созданный Ess Model, пропустил (по моему мнению) отображение связи между двумя интерфейсами в графе UML.JAVA UML Интерфейс множественного наследования ошибка или ошибка?

Я довольно новый для Java и UML, так что, возможно, это моя вина, но я хочу быть уверенными, чтобы не пропустить этот основной материал ... Как должен быть правильный график UML для отображения следующего кода:

-I ->interface IHave_an_x

int getx(); 
void setx(int x); 

-I ->interface IHave_an_y

int gety(); 
void sety(int y); 

-I ->interface IHave_an_x_AND_an_y extends IHave_an_x, IHave_an_y

//.. no code comes here 

-O ->class Object_have_xy implements IHave_an_x_AND_an_y

int getx(){ 
    return this.x; 
} 
void setx(int x){ 
    this.x = x; 
} 
int gety(){ 
    return this.y; 
} 
void sety(int y){ 
    this.y = y; 
} 

-O ->class ObjectNeeds_xy_inConstructor

public ObjectNeeds_xy_inConstructor (Object_have_xy obj_xy){ 
     System.out.println("obj_xy..."); 
     System.out.println("valueof x = " + obj_xy.getx()); 
     System.out.println("valueOf y = " + obj_xy.gety()); 
} 

Это граф, порожденный Ess Model (это нормально, чтобы не представляют связь с интерфейсом IHas_a_property_y в UML или ошибка): Ess Model auto generated graph И это нормально, что я ожидал (то, что я думаю, что это должно быть): This is what I think it should be

ответ

2

Поскольку вы явно расширить оба интерфейса в коде, что ссылка должна отображаться на диаграмме UML (в противном случае код, сгенерированный из UML может получить доступ к sety только через Object_have_xy, но не через IHave_an_y) Так что если фотографии верны, это ошибка.

+0

Благодарим вас за этот быстрый ответ, поэтому я могу глубже погрузиться в свои книги, не сомневаясь в недоразумении :) Я просто должен отметить это сообщение как решение. Круто. – tatactic

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

  • Нет связанных вопросов^_^