Modificadores de java

Video: 11 Certificação Java (Modificadores de Acesso)

Aqui são um divertimento alguns fatos sobre modificadores Java usados ​​em programas Java como projetar Apps Android. A palavra final tem muitos usos em programas Java. Além de ter variáveis ​​finais, você pode ter estes elementos:

  • classe final: Se você declarar uma classe para ser final, ninguém (nem mesmo você) pode estendê-lo.

  • Método final: Se você declarar um método para ser final, ninguém (nem mesmo você) pode substituí-lo.

Estes números colocar essas regras em perspectiva. Eles mostram que você não pode estender o Coisa classe, porque o Coisa classe é final. E, você não pode substituir o Coisa classe de incremento método porque isso incremento método é final.

Tentando estender uma classe final.
Tentando estender uma classe final.
Tentando substituir um método final.
Tentando substituir um método final.

Você pode aplicar Java de protegido palavra-chave para os membros de uma classe. este protegido palavra-chave sempre me pareceu um pouco estranho para alguns. No uso comum Inglês, quando suas posses estão “protegidos”, seus bens não são tão disponíveis como eles normalmente.

Mas em Java, quando você prefaciar um campo ou um método com o protegido palavra-chave, você faz esse campo ou método um pouco mais disponíveis do que seria por padrão, como mostrado na figura.

Video: Video #6 - Modificadores de acceso en Java

modos de acesso para os campos e métodos.
modos de acesso para os campos e métodos.

Um membro padrão de uma classe (um membro cuja declaração não contém as palavras público, privado, ou protegido) Pode ser usado por qualquer código no interior do mesmo pacote que essa classe.



A mesma coisa é verdade sobre a protegido membro da classe. Mas, além disso, um protegido membro é herdada do lado de fora do pacote da classe por qualquer subclasse da classe que contém esse membro protegido.

Hã? O que significa que a última frase dizer, sobre protegido membros? Para tornar as coisas concretas, esta figura mostra a existência despreocupada em que duas classes estão no mesmo pacote. Com ambos Coisa e Minhas coisas no mesmo pacote, o Minhas coisas classe herda o Coisa padrão de classe valor e a variável Coisa padrão de classe incremento método.

Duas classes no mesmo pacote.
Duas classes no mesmo pacote.

Se você mover o Coisa classe para um pacote diferente, Minhas coisas não herda o Coisa padrão de classe valor variável ou o Coisa padrão de classe incremento método, como mostrado aqui.

Classes em diferentes pacotes.
Classes em diferentes pacotes.

Video: Tutorial Java SE - 26 Modificadores de Acceso

Mas se você ligar valor dentro de protegido variável e você liga incremento dentro de protegido método, o Minhas coisas classe novamente herda sua classe pai valor variável e incremento método, como mostrado aqui.

Usando o modificador protegido.
Usando o modificador protegido.

Observe mais um detalhe nas figuras. o Minhas coisas classe de incremento método foi mudado de padrão para público. Isso foi feito para evitar ver uma mensagem de pouco interessante erro. Você não pode substituir um método com outro método cujo acesso é mais restritivo do que o método original. Em outras palavras, você não pode substituir um método público com um método particular. Você não pode mesmo substituir um método público com um método padrão.

acesso padrão do Java é mais restritivo do que o acesso protegido, como mostrado na figura. Então você não pode substituir um método protegido com um método padrão.

Neste exemplo, toda a questão foi evitada por tornar pública a Minhas coisas classe de incremento método. Dessa forma, a incremento método com o tipo menos restritiva do acesso foi substituído.


Publicações relacionadas