Dog.java
public class Dog {
private String raça = "viralata";
private void latir(){
System.out.println("au au");
}
}
Dobberman.java
public class Dobbermar extends Dog {
private void destruir(){
System.out.println("rrrrr asdfhasdasd");
}
}
Canil.java
public class Canil {
private void exibirMe(){
System.out.println("Eu posso ser acessado aqui");
}
public static void main(String args[]){
Dog dog = new Dog();
dog.latir(); // xiii
Dobberman d = new Dobberman();
d.raça = "Dobberman"; // piorou né?
d.destruir(); // agora é que destruiu tudo
exibirMe(); // blz. aqui tudo bem.
}
Vamos fazer apenas mais uns poucos comentários para encerrar essa seção. Dog definiu dois membros privados, um método e uma variável de instância. Esses membros só podem ser acessados por algum código que esteja dentro do escopo (entre as chaves) da classe Dog, e por ninguém mais. Então eu nem preciso falar que a classe Dobberman não herdará os membros né? Vamos pular então pra classe Canil, ela instância um objeto Dog e um Dobberman, e em seguida tenta acessar seus membros privados, o que obviamente ocasionará em um erro de compilação, pois estes não são acessíveis a partir de outra classe. Se porém, contudo, todavia a classe Canil pudesse ser compilada, o método exibirMe poderia ser chamado sem problemas, pois apesar de ele ser privado, o acesso está sendo feito dentro da classe na qual ele foi declarado.
Então é isso. Sobre membros privados não há mais o que dizer, pelo menos não por enquanto (calma, depois falaremos sobre inner classe e você verá que é possível acessar membros privados a partir de outra classe... mas esqueça isso por enquanto).
Então se liga aí que é hora da revisão:
public -> acessível a partir de qualquer classe em qualquer pacote.
protected -> acessível a partir de qualquer classe no mesmo pacote e por outras classes em outros pacotes através de herança.
default -> acessível a partir de qualquer classe no mesmo pacote.
private -> acessível somente a partir da classe que o declarou.
Até o próximo post.
Nenhum comentário:
Postar um comentário