In my previous posts, I explained about packages. But packages has a limitation, where the name of a class is unique across all the packages. We can overcome this limitation using namespaces.
A fully qualified class is automatically put into the namespace. For example the class ‘java.lang.Double’ is put into the package ‘java.lang’.
namespace.txt
@startuml scale 600 width namespace java.lang #00FFFF { class System class Boolean class Object } class java.lang.Double class java.lang.Integer namespace java.util #gold{ class Set } java.lang.Object <|-- java.util.Set @enduml
Default namespace
Classes that are not part of any namespace are put into default namespace and accessed with a dot (.)
defaultNamespace.txt
@startuml class MyBaseClass namespace java.lang #00FFFF { class System class Boolean class Object } class java.lang.Double class java.lang.Integer namespace java.util #gold{ class Set } java.lang.Object <|-- java.util.Set .MyBaseClass <|-- java.lang.Double @enduml
Above snippet generate below diagram.
Previous Next Home
No comments:
Post a Comment