05
Modificadores de Acesso, Construtores e
Elementos Estáticos
Tópicos Abordados
• Modificadores de acesso
– Atributos e métodos
– Classes
• Princípio do encapsulamento
• Métodos getters e setters
• Construtores
– Padrão e com parâmetros
– Sobrecarga
• Atributos e métodos estáticos
– Criação de constantes
– Bloco static
• A classe System
Modificadores de Acesso
• O acesso a atributos e métodos é restringido através do uso de modificadores
• Alguns modificadores
– private
• Visível apenas para a classe que o declara
– public
• Visível a todas as classes
1
Atributos e Métodos
• Marcar um atributo ou método como private esconde o atributo de quem usa a classe
• É interessante marcar métodos como private quando este é um método auxiliar da classe, que não deve ser acessível externamente Atributos e Métodos
class Livro { private String isbn;
Atributos private int numPaginas; public void emprestar(Cliente c) {
...
} public void devolver() {
...
}
Métodos
}
Atributos e Métodos
• Apesar de não ser regra, normalmente:
– Atributos são declarados como private
– Métodos são declarados como public
• Esta abordagem faz sentido, já que o ideal é que objetos colaborem através de troca de mensagens (chamadas de métodos), e não através da manipulação direta de atributos
2
Classes
• Quase sempre, classes também são declaradas como public
– Apenas uma classe definida como public pode existir num arquivo Java
– O nome do arquivo deve ser igual ao nome da classe definida como public
• Classes não declaradas como public são chamadas inner classes
Classes
public class Livro {
...
}
Livro.java
Princípio do Encapsulamento
• Encapsular é esconder detalhes de funcionamento do programa
• É fundamental para permitir que o programa seja suscetível a mudanças
3
Métodos Getters e Setters
• Quando os atributos são declarados como private, getters e setters podem ser usados
• Getters
– Usados para expor os valores de atributos
• Setters
– Usados para