@startuml uml-class-sections
skinparam backgroundColor transparent
skinparam defaultFontSize 14
skinparam shadowing false
skinparam ClassBorderColor #2e86c1
skinparam ClassBackgroundColor #eaf2f8
skinparam ClassHeaderBackgroundColor #2e86c1
skinparam ArrowColor #1a5276

class "ClassName" as c1 {
  .. **Upper Section** ..
  ClassName
  ==
  .. **Middle Section** ..
  - privateAttr: Type
  # protectedAttr: Type
  + publicAttr: Type
  ==
  .. **Lower Section** ..
  + publicMethod(): ReturnType
  - privateMethod(): void
  # protectedMethod(): void
}

note right of c1
  **Visibility Markers**
  + public
  - private
  # protected
  ~ package
end note

@enduml
