DC-UFRPE/Licenciatura Plena em Computação/Programação II/Modificadores

Modificadores editar

Na programação orientada a objetos, os modificadores são palavras-chave que são usadas para modificar o comportamento padrão de uma classe, método ou variável. Eles permitem que você controle como uma classe, método ou variável é acessada ou modificado de outras partes do programa.

Modificadores de acesso editar

Os modificadores de acesso são usados para controlar o acesso às classes, métodos e variáveis. Existem quatro tipos de modificadores de acesso em Java:

  • public: permite que a classe, método ou variável seja acessada de qualquer lugar do programa.
  • private: restringe o acesso à classe, método ou variável apenas ao escopo da classe em que foi definido.
  • protected: permite que a classe, método ou variável seja acessado por outras classes no mesmo pacote ou por subclasses, independentemente do pacote em que estão definidas.
  • default (sem modificador): restringe o acesso à classe, método ou variável apenas ao escopo do pacote em que foi definido.

A tabela a seguir resume os níveis de acesso para cada modificador:

Modificador Classe Variável Método
public Sim Sim Sim
private Não Sim Sim
protected Não Sim Sim
default Sim Sim Sim

Modificadores de não acesso editar

Os modificadores de não acesso são usados para modificar outras propriedades de uma classe, método ou variável. Existem vários tipos de modificadores de não acesso em Java:

  • static: indica que a variável ou método pertence à classe em vez de uma instância da classe.
  • final: indica que a variável ou método é imutável, ou seja, não pode ser alterado depois que é inicializado.
  • abstract: indica que o método ou classe é abstrato, ou seja, não possui implementação e deve ser implementado por subclasses.
  • synchronized: indica que o método é sincronizado, ou seja, apenas uma thread pode acessá-lo de cada vez.
  • transient: indica que a variável não deve ser serializada quando a classe é serializada.
  • volatile: indica que a variável pode ser modificada por várias threads e deve ser sincronizada para garantir que todas as threads acessem o mesmo valor atualizado.

Exemplo de uso de modificadores em Java editar

A seguir, um exemplo de uso de modificadores em Java para definir uma classe com um método e uma variável:

public class ExemploModificadores {

    private int contador = 0;

    public void incrementar() {
        contador++;
    }

    public int getContador() {
        return contador;
    }
}

Neste exemplo, a classe ExemploModificadores é definida como pública, permitindo que ela seja acessada de qualquer lugar do programa. A variável contador é definida como privada, o que significa que ela só pode ser acessada dentro da classe. O método incrementar é definido como público, permitindo que ele seja acessado de qualquer lugar do programa, mas só pode ser usado para alterar o valor da variável contador. O método getContador é definido como público, permitindo que ele seja acessado de qualquer lugar do programa e usado para retornar o valor da variável contador.

Links externos editar