Ola
Uma classe anonima sempre precisa estender uma classe ?
Por exemplo
class Empregado {
public void trabalhar() {
System.out.println("trabalhar");
}
}
class QuadroFuncionario {
Empregado mgr = new Empregado() {
public void trabalhar() {
System.out.println("mandar");
}
};
}
Aqui a classe anonima estende a classe Empregado e sobrescreve a funcao trabalhar. Creio que esta seja a sintaxe para criar uma classe anonima sendo que esta obrigatoriamente estende uma classe.
O codigo abaixo porem descreve como criar uma classe anonima, porem desta vez ela nao estende outra classe mas implementa uma interface, segue codigo abaixo
public class Beta {
public static void main(String[] args) {
acao(
new Evento() {
public void clicar() {
System.out.println("clicou");
}
}
);
}
private static void acao(Evento e) {
e.clicar();
}
}
interface Evento {
public abstract void clicar();
}
Portanto eu posso criar uma classe anonima que nao extends uma classe !? existe alguma outra peculiaridade ?