Я согласен с @Thomas Killian: вы хотите смешивать два разных представления.
На диаграмме классов вы сможете показывать мощности, но не отношения экземпляров. Кажется, ваш класс List - это не простой список, а цепочка/linked list.
A ListElement на самом деле является частью LinkedList. Два предшественника и преемник атрибуты себя типа ListElement (или как вы хотите назвать этот класс, роль узла может быть отмечена) будет достаточно, чтобы предложить поведение. Поскольку атрибут имеет мощность 1: 1 с инкапсулирующим классом, это относится к тому, что вы хотите моделировать. Переименование класса списка станет подсказкой для устройства чтения диаграмм.
Взгляните на Java Linked List source, если вам нужны некоторые идеи: это может помочь вам создать четкую структуру классов, первоначальный автор не так уж плох при разработке классов. В этом случае он подталкивает инкапсуляцию к избытку, но идея правильная.
Можете ли вы уточнить, что «класс должен ссылаться на экземпляр». Это, честно говоря, не имеет для меня никакого смысла. –
Я пытаюсь смоделировать список. У меня есть класс «Список», состоящий из класса «Элемент списка». Класс «Элемент списка» должен ссылаться на своего преемника, экземпляр «Элемент списка» и «Список» должен ссылаться на первый элемент списка. – Khayet
Это нечто иное, чем вы просили. Далее вы все еще смешиваете экземпляр и класс. Что вы имеете в виду? –