Propagação de qualificadores

5 respostas
D

Vendo que podemos usar vários tipos de qualificadores de classes em Java, fiquei com uma dúvida, tenho uma classe pai e a classe filha herda todas as caracteristicas da classe pai. Ela também herda o qualificador? Por exemplo: a classe pai é private, assim a classe filha também herda o qualificador private como suas variáveis também.

Agradeço desde já a ajuda.

Deathcon4

5 Respostas

ViniGodoy

Sim. Uma variável private na classe pai será private na filha (e no caso, você nem conseguirá enxerga-la na classe filha). Uma variável protected continua protected.

Um método protected continua protected ou default, a menos que a filha altere explicitamente sua visibilidade para public, redeclarando o método.

Master.Abs

No caso da classe como você abordou:
Uma classe deve ser somente publica, abstrata e/ou final, ou seja,
não seria possível você definir uma classe como private mesmo
se você quisesse a menos que se tratasse de uma innerClass
porém ao declarar o modificador de acesso como private não seria
possível você acessá-lo pois o modificador private só pode ser
acessado por ela mesma.

com relação à:

Uma variável private na classe pai será private na filha (e no caso, você nem conseguirá enxerga-la na classe filha). Uma variável protected continua protected.

Um método protected continua protected ou default, a menos que a filha altere explicitamente sua visibilidade para public, redeclarando o método.

Disse bem o ViniGodoy.

Flw.

douglaskd

No caso da classe como você abordou:
Uma classe deve ser somente publica, abstrata e/ou final, ou seja,
não seria possível você definir uma classe como private mesmo
se você quisesse a menos que se tratasse de uma innerClass
porém ao declarar o modificador de acesso como private não seria
possível você acessá-lo pois o modificador private só pode ser
acessado por ela mesma.

com relação à:

Uma variável private na classe pai será private na filha (e no caso, você nem conseguirá enxerga-la na classe filha). Uma variável protected continua protected.

Um método protected continua protected ou default, a menos que a filha altere explicitamente sua visibilidade para public, redeclarando o método.

Disse bem o ViniGodoy.

Flw.

só um detalhe…Classes finais são não podem ter filhos

Master.Abs

No caso da classe como você abordou:
Uma classe deve ser somente publica, abstrata e/ou final, ou seja,
não seria possível você definir uma classe como private mesmo
se você quisesse a menos que se tratasse de uma innerClass
porém ao declarar o modificador de acesso como private não seria
possível você acessá-lo pois o modificador private só pode ser
acessado por ela mesma.

com relação à:

Uma variável private na classe pai será private na filha (e no caso, você nem conseguirá enxerga-la na classe filha). Uma variável protected continua protected.

Um método protected continua protected ou default, a menos que a filha altere explicitamente sua visibilidade para public, redeclarando o método.

Disse bem o ViniGodoy.

Flw.

só um detalhe…Classes finais são não podem ter filhos

Disse bem. Valeu por complementar.

D

Ficou claro, terei muito cuidado na hora de projetar e pensar bem quais classes e metodos colocarei como private e final.

Criado 10 de fevereiro de 2012
Ultima resposta 27 de fev. de 2012
Respostas 5
Participantes 4