Access Modifiers

Car UML Car UML

You will notice that each feature of the class Car is labeled with a plus or minus sign. This informs programmers how to control access to the feature.

+ Public

Public access means the code outside of the class definition are expected to be able to access this feature. Generically this is referred to as “public”. Constructors are almost always public, as are many methods.

- Private

Private access means that this feature should only be referenced by code inside of the class definition. Some methods and nearly all attributes are typically private.

Implementation

Implementation in code depends on the implementation language. Some languages, like Java, strictly enforce access modifiers, making it impossible for coders to access “private” features outside a class definition. Other languages, like Python do not enforce any restrictions, and instead depend on coders to voluntarily follow the convention.