How do I mark a class as a singleton in UML?

2019-04-18 06:51发布

I have an UML diagram on which I want to mark some classes as singletons (because they are). How do I do that? Do I invent a new stereotype or do I just add a comment or are there some existing means to do that?

标签: singleton uml
2条回答
够拽才男人
2楼-- · 2019-04-18 06:53

"What will most clearly represent the concept to your reader."

There is a reasonable example of the basic appearance over on Wikipedia. It shows a private constructor and a public getInstance() method that returns an object of type Singleton. I'd also find a stereotype to be a perfectly reasonable way to make it explicit without requiring your reader to parse the details of the class object.

查看更多
在下西门庆
3楼-- · 2019-04-18 07:00

Craig Larman's "Applying UML and Patterns" book (3rd edition) gives the following notation for a sequence diagram:

Note that it implies that before calling doA the :Register object manages to get access to the singleton via the standard way, e.g., getInstance(). This makes the diagram more agile.

For a class diagram:

查看更多
登录 后发表回答