Bom,
Você está tendo um erro conceitual. Uma subclasse pode acessar qualquer
método protected sim. O que você está fazendo é criando um novo objeto da
classe pai, então, obviamente nenhum método protegido será acessado.
No entanto, caso você utilize um método de objeto (não static), pode
perfeitamente referenciá-lo utilizando this.x.
Pode testar, neste seu exemplo, incluir em SubClasse o método:
public int getX()
{
return this.x;
}
E para demonstrar que a visibilidade do java é de classe, como eu disse no
e-mail anterior, você retirar as linhas:
SuperClasse sc = new SuperClasse();
sc.x = 34;
Que seu exemplo compilará normalmente.
Logo, o tipo de visibilidade protected do java mantém o padrão da orientação
objeto em que qualquer subclasse pode acessar o método ou atributo.
abraços
Jorge
-----Original Message-----
From: Edward Roe [mailto:[EMAIL PROTECTED]]
Sent: segunda-feira, 9 de julho de 2001 15:52
To: [EMAIL PROTECTED]
Subject: RE: RES: [java-list] Basico de OO em JAVA - CUIDADO
Oi,
> Não é isso não.
>
> A visibilidade protected permite qualquer classe do mesmo pacote e
> qualquer sub-classe em qualquer pacote visualizar.
Entao tenta isso e me diz o que acontece:
package pacote1;
public class SuperClasse
{
protected int x;
}
package pacote2;
import pacote1.*;
public class SubClasse extends SuperClasse
{
public static void main(String [] args)
{
SuperClasse sc = new SuperClasse();
SubClasse sbc = new SubClasse();
sc.x = 34;
sbc.x = 55;
}
}
[]´s
--
Edward Roe
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------