Ir para o conteúdo

Questões sobre Classes Anônimas

Questão 1
O que é uma classe anônima em Java?
  • A. Uma classe declarada sem atributos.
  • B. Uma classe que não possui construtor.
  • C. Uma classe sem nome criada no momento da instanciação.
  • D. Uma interface sem métodos.
  • Questão 2
    Qual é uma característica das classes anônimas?
  • A. Podem ser reutilizadas em vários arquivos.
  • B. Não possuem nome explícito.
  • C. Devem ser declaradas em arquivos próprios.
  • D. Não podem sobrescrever métodos.
  • Questão 3
    Analise o código abaixo.
    
    Runnable r = new Runnable() {
        public void run() {
            System.out.println("Executando");
        }
    };
    

    Qual alternativa está correta?
  • A. Foi criada uma classe anônima.
  • B. Foi criada uma interface.
  • C. O código possui erro de compilação.
  • D. Runnable é uma classe abstrata.
  • Questão 4
    Uma classe anônima pode herdar de uma classe?
  • A. Sim.
  • B. Não.
  • C. Apenas se a classe for final.
  • D. Apenas se a classe for abstrata.
  • Questão 5
    Uma classe anônima pode implementar interfaces?
  • A. Sim.
  • B. Não.
  • C. Apenas interfaces funcionais.
  • D. Apenas interfaces vazias.
  • Questão 6
    Analise o código abaixo.
    
    Runnable r = new Runnable() {
        public void run() {
            System.out.println("Olá");
        }
    };
    

    Qual método foi implementado?
  • A. start()
  • B. execute()
  • C. run()
  • D. main()
  • Questão 7
    Analise o código abaixo.
    
    Object obj = new Object() {
    };
    

    Qual alternativa está correta?
  • A. Foi criada uma classe anônima que estende Object.
  • B. O código possui erro.
  • C. Foi criada uma interface.
  • D. Object tornou-se abstrata.
  • Questão 8
    Qual é a principal vantagem das classes anônimas?
  • A. Reduzir código quando a implementação será utilizada apenas uma vez.
  • B. Aumentar o desempenho da JVM.
  • C. Eliminar o uso de interfaces.
  • D. Evitar a criação de objetos.
  • Questão 9
    Analise o código abaixo.
    
    public abstract class Animal {
        public abstract void emitirSom();
    }
    
    Animal a = new Animal() {
        public void emitirSom() {
            System.out.println("Som");
        }
    };
    

    Qual alternativa está correta?
  • A. O código possui erro.
  • B. Foi criada uma classe anônima que implementa emitirSom().
  • C. Animal deixou de ser abstrata.
  • D. emitirSom() tornou-se estático.
  • Questão 10
    Analise o código abaixo.
    
    Runnable r = new Runnable() {
        public void run() {
            System.out.println("Executando");
        }
    };
    r.run();
    

    O que será exibido?
  • A. Nada.
  • B. Erro de compilação.
  • C. Executando
  • D. run
  • Questão 11
    Analise o diagrama UML abaixo.
    Qual método deve ser implementado por uma classe anônima baseada nessa interface?
  • A. start()
  • B. execute()
  • C. run()
  • D. main()
  • Questão 12
    Analise o diagrama UML abaixo.
    Para criar uma instância utilizando classe anônima é necessário:
  • A. Remover o abstract da classe.
  • B. Implementar os métodos abstratos.
  • C. Tornar o método privado.
  • D. Transformar a classe em interface.
  • Questão 13
    Analise o código abaixo.
    
    Comparator c = new Comparator() {
        public int compare(Integer a, Integer b) {
            return a - b;
        }
    };
    

    Qual método foi implementado?
  • A. equals()
  • B. compare()
  • C. sort()
  • D. compareTo()
  • Questão 14
    Analise o diagrama UML abaixo.
    Qual é o tipo de retorno do método compare?
  • A. boolean
  • B. void
  • C. String
  • D. int
  • Questão 15
    Analise o diagrama UML abaixo.
    Qual código representa uma implementação por classe anônima?
  • A.
    
    Acao a = new Acao() {
        public void executar() {}
    };
    

  • B.
    
    Acao a = new Acao();
    

  • C.
    
    new interface Acao();
    

  • D.
    
    Acao.executar();