Форум Сообщества Аналитиков

×


EA-Почему в диаграмме не отображается extends?(Прочитано 5525 раз)
Здравствуйте.

В Enterprise Architector с помощью обратного инжиринга, отобразил исходный код приложения в виде диаграммы классов.
Однако ЕА отобразила ассоциативные (association) связи между объектами (как я понял), но не показывается связи "расширения"(extends). Почему не отображается? Как и можно ли в ЕА отобразить подобные связи между классами?

Спасибо



Добрый вечер.

Вы что-то путаете. В ДК нет никаких связей расширения, наверное Вы путаете ее с наследованием.
Для того, чтобы помочь Вам нужен исходный код, а также сведения о версии ЕА.



EA 12 версии.
Да наследование.
ЕА отобразила ассоциативные (association) связи между объектами (как я понял), но не показывается наследование (extends). Почему не отображается (должна отображаться другая стрелка)?
public class SimpleAdapter extends RecyclerView.Adapter<SimpleAdapter.VerticalItemHolder> {

Исходный Код - прилагаю файл.
Скриншот прилагаю.






Добрый вечер.

Вы что-то путаете. В ДК нет никаких связей расширения, наверное Вы путаете ее с наследованием.
Для того, чтобы помочь Вам нужен исходный код, а также сведения о версии ЕА.



В присланном вами коде есть только это классы реализованные вами
AlarmReceiver.java
BootReceiver.java
DateTimeSorter.java
LicencesActivity.java
MainActivity.java
Reminder.java
ReminderAddActivity.java
ReminderDatabase.java
ReminderEditActivity.java

Все они и отображаются на диаграмме,
а вот классы-предки - части библиотек, которых у вас в пакете нет, откуда же он возьмет эту информацию и отобразит ее на диаграмме?
Далее Класс SimpleAdapter показан как внедренный объект в которые еще другие внедрены в трассировке показана связь принадлежит.
Попробуйте разделить в разные файлы и еще раз импортируйте код. Думаю парсер кода спотыкается на том, что классы наследники (а также и интерфейсы) записаны в одном файле mainactivity - как гипотеза



Еще замечу, не все так просто с вашим кодом

public class MainActivity extends AppCompatActivity {
    private RecyclerView mList;
    private SimpleAdapter mAdapter;

Т.е. MainActivity является по вашей версии родителем SimpleAdapter, одновременно содержит его объект в качестве частного атрибута - отсюда ассоциация между родительским классом и его потомком

Но если попробовать все-таки разделить классы в отдельные файлы, а интерфейсы в отдельные файлы также  - и попробовать реинжиниринг должно получиться, либо надо шаманить с кодом трансформации с java в uml




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19