Override: Isto compila?

1 resposta
R

para os que estão estudando para a prova… isto compila ?

class Teste extends A
{
	public static void main(String[] args)
	{
		System.out.println(89%100);
	}
	
	void teste()
	{}
}

class A
{
	protected void teste()
	{}
}

1 Resposta

M

Salve Ricardo !

Este código não vai compilar, pois vc não pode dar um Override num método, dando menos acesso do que o indicado no método da superclasse.

Da um erro como a seguir :
"…attempting to assign weaker access privileges; was protected"

como vc não definiu uma cláusula de acesso ao método na subclasse, seu acesso se torna default, ou seja, package, que restringe mais o acesso que o protected…

NO override vc pode dar mais acesso ou ter o mesmo acesso, nunca menos privilégios.

Abraco

Criado 9 de agosto de 2003
Ultima resposta 27 de ago. de 2003
Respostas 1
Participantes 2