what does this symbol mean?
UML 2.5.1 A dashed line between two class boxes ending in a hollow triangular arrowhead

Realization

A dashed line ending in a hollow triangle is realization. The element at the plain end implements the interface or specification that the triangle points at.

Easily confused with

How to read it

Realization is a relationship between a specification and an implementation of it. UML 2.5.1 draws it as a dashed line with a triangular arrowhead at the end of the realized element, the specification; the element at the tail, the client, is the implementation. In class diagrams its commonest use is a class implementing an interface. The interface is drawn as a class rectangle with «interface» above its name, and the specification describes it as a contract that any class realizing it has to fulfil. Kansas State University's CIS 400 textbook calls realization a weak "is-a" relationship, because the same interface can be implemented by otherwise unrelated classes.

Also searched as: implementation arrow uml, interface realization, realization symbol, uml realization.

The lollipop and the socket

An interface can also be drawn as a small circle, the "ball" or "lollipop", joined by a solid line to the class that provides it. UML 2.5.1 draws a half circle, the "socket", on a solid line from a class that requires the interface. Robert C. Martin's 1997 tutorial shows the lollipop as shorthand for the arrow between the implementing class and the interface.

Look-alikes

With a solid line, the same triangle is Generalization (inheritance), inheritance between classes. OpenDSA's notes put the difference this way: generalization models inheritance between classes, and realization models a class implementing an interface. A dashed line with an open arrowhead is a Dependency; OpenDSA draws that plain arrowhead from a class that uses an interface. The specification treats realization as a specialized kind of dependency, so the arrowhead is what tells the two apart.

Older diagrams

Diagrams from UML's first versions may mark an interface with the stereotype «type» instead of «interface». Martin's tutorial, written in the year UML 1.0 was released, does.

More UML diagram symbols

The same shape elsewhere

Sources

Researched, edited and approved by Rory Hansen before publishing. Last reviewed October 9, 2026. How we research

Added .

Report a problem

Please don’t include personal details.