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…

Business Process Automation with Scriptcase

In the modern business world, operational efficiency is not just a goal. It's a necessity. With inc...

“We developed RISK4ALL, a SaaS platform that allows implementing GRC in an organization with total security and privacy.” (RISK4ALL)

Come and discover the success case of the Risk4all, software, a multilingual and multi-company SaaS...

Security in web applications

In this article, you will learn about web application security and the options within Scriptcase th...

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.