Classes, methods and attributes can be accessed at various levels of scope. What determines this access is the visibility modifier that will be implemented, which will indicate where certain level element can be accessed. For example, a variable X can only be accessed within the scope of the class; on the other hand, the variable Y can be accessed from the instantiated object. Thanks to this feature is that the concept of encapsulation of object-oriented programming can be applied.

Within the UML notation it is possible to enter through specific characters, which the visibility of each of the elements that make up a class. By default, most languages use three reserved words to determine the visibility of elements:

  • public: indicating that the element can be accessed from the instantiated object;
  • private: indicates that the element can only be accessed in the local scope;
  • protected: Indicates the protected element that can only be accessed within the scope or derived classes;
  • default: indicates that the element uses the default property of language.

In the UML notation format, the visibility of the elements is displayed as follows:

Representation UML

  • “+” : public;
  • “-” : private;
  • “#” : protected;
  • ~“: default.

Upon receiving the notation that is the left side of the names of the element, the programmer will know exactly how to program the element within the applied modeling. Following is presented a practical example of using the displayed notation:


+ name: String

~ ID: String

# age: int

– balanceAccount: double

~ CustomerDatabase (name: String, ID: String)

+ getBalanceAccount () :double

+ getBalanceAccount(balanceAccount: double) :void

#setAge (age: int) :void

In the example, the attributes, shown in the first diagram block after the class name, have their visibility indicated by the standard notation. The following methods are also presented along with the modifier.

Once the programmer gets this diagram, he just needs to use the corresponding syntax to the modifier within the programming language used for development.

Check out more content on our blog!
Learn all about Scriptcase.

By ,

June 17, 2015


You might also like…

9 Web Development and IT Trends for 2022

Check out in this article nine important web development and IT trends you should keep an eye on in...

October Newsletter

Follow the latest news for the month of October! Webinars, blog posts, videos, and more. WEB...

API: What is it? Which ones are available on Scriptcase?

Understand everything about what an API is, what they are for, and examples of APIs already integra...

You might also like…

Get new posts, resources, offers and more each week.

We will use the information you provide to update you about our Newsletter and Special Offers. You can unsubscribe any time you want by clinck in a link in the footer of any email you receive from us, or by contacting us at Learn more about our Privacy Police.