O que este codigo faz?

alguem pode me dizer o que este código faz?
não consigo executá-lo!

class Test
{
void show()
{
System.out.println(“non-static method in Test”);
}
}
public class Q3 extends Test
{
void show()
{
System.out.println(“Overrideden non-static method in Q3”);
}
public static void main(String[] args)
{
Q3 a=new Q3();
a.show();
}
}

bom samantha seu codico contem um pequeno erro nada grave, mas que impede sua compilação, Olhe veja bem vou colocar o codigo correto aqui e explicar o que ele faz, OK!!!

class Q3 { void show() { System.out.println("non-static method in Q3"); } } public class Test extends Q3 { void show() { System.out.println("Overrideden non-static method in Test"); } public static void main(String[] args) { Test a=new Test(); a.show(); } }

Voce tem duas classes declaradas a classe Q3, e a Classe Test na qual extend Q3, sendo extendida para usar seus metodos basta instanciar a classe test ou seja

Test a = new Test();

Neta classe ha um caso de Polimorfismo então ao chamar o metodo show() atraves do comando a.show();.
O programa mostra o conteudo do metodo show na classe Test

Espero ter ajudado qualquer duvida, estamos ai…