👁️ Segurança de Acesso (Visibilidade)
A Visibilidade controla quem pode "enxergar" ou "alterar" dados dentro de um componente de software. É a base física do Encapsulamento, protegendo a integridade do Banco de Dados contra acessos diretos desprotegidos.
🏗️ Modificadores de Acesso (UML vs Java)
| Símbolo UML | Modificador | Visão do Arquiteto |
|---|---|---|
| ➕ | Public | Porta aberta. Qualquer classe do sistema pode invocar ou ler. |
| 🔒 | Private | Cofre. Apenas os métodos de dentro desse arquivo (this.) podem mexer no dado. |
| 🛡️ | Protected | Herança Real. Apenas a própria classe e suas filhas (extends) podem acessar. |
| 📦 | Package (~) | Apenas classes da mesma pasta (package) no Java enxergam. |
classDiagram
class ContaBancaria {
-double saldoOculto
#String titular
+efetuarSaque(double valor)
+consultarSaldo() double
}
[!TIP] 💡 Padrão de Ouro de Backend: Atributos (Variáveis) devem ser SEMPRE Privados (-). O acesso a eles deve ser feito exclusivamente por métodos Públicos (+) (Getters e Setters) ou métodos de serviço, garantindo que ninguém mude um saldo bancário para negativo por erro de lógica externa.