O GoConqr está de visual novo! Conte para nós o que você achou.

Quiz

Acoplamento complexo

Leandro Serra 8 perguntas

Fazer o quiz

Perguntas do quiz (8)

  1. 1Diferença entre delegação e redirecionamento:
    1. ADelegação é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é igual a m!
    2. BDelegação é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é diferente de m!
    3. CRedirecionamento é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é diferente de m!
    4. DRedirecionamento é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é igual a m!
  2. 2Reconheça o conceito de delegação no código Java abaixo, seguindo o seguinte formato: [classe delegadora–método delegador/objeto delegado–classe delegada–método delegado]
    public class GerenteDeVendas{
    . . .
    public void aumenteVendasTrimestralmente( ){. . .}
    . . .
    }
    public class VicePresidenteDeVendas{
    . . .
    public void aumenteVendasTrimestralmente( ){
    gerDeVendas.aumenteVendasTrimestralmente( );
    }
    . . .
    GerenteDeVendas gerDeVendas;
    }
    public class Presidente{
    . . .
    public void aumenteLucros(Financeiro financeiro){
    vpDeVendas.aumenteVendasTrimestralmente( );
    }
    . . .
    VicePresidenteDeVendas vpDeVendas;
    }
    1. AVicePresidenteDeVendas–aumenteVendasTrimestralmente( )/gerDeVendas–GerenteDeVendas–aumenteVendasTrimestralmente( )
    2. BPresidente–aumenteLucros( )/vpDeVendas–VicePresidenteDeVendas–aumenteVendasTrimestralmente( )
  3. 3O trecho "vpDeVendas.getGerDeVendas( ).monitoraMarketing( )" corresponde a objeto anônimo de que classe?
    public class GerenteDeVendas{
    . . .
    public void aumenteVendasTrimestralmente( ){. . .}
    public void monitoraMarketing( ){. . .}
    . . .
    }
    public class VicePresidenteDeVendas{
    public void aumenteVendasTrimestralmente( ){
    gerDeVendas.aumenteVendasTrimestralmente( )
    } public GerenteDeVendas getGerDeVendas( ){return gerDeVendas;}
    . . .
    GerenteDeVendas gerDeVendas;
    }
    public class Presidente{
    . . .
    public void aumenteLucros(Financeiro financeiro){
    vpDeVendas.aumenteVendasTrimestralmente( );
    // analisa estratégia de marketing
    vpDeVendas.getGerDeVendas( ).monitoraMarketing( );
    . . .
    }
    . . .
    VicePresidenteDeVendas vpDeVendas;
    }

    gerDeVendas.aumenteVendasTrimestralmente( )
    1. APresidente
    2. BGerenteDeVendas
    3. CVicePresidenteDeVendas
  4. 4Dentre as mensagens ou invocações de métodos no método aumenteLucros(Financeiro financeiro) da classe Presidente abaixo, aponte qual não satisfaz o princípio "Law of Demeter". Escolha dentre os números 1 a 4!
    public class Presidente{
    . . .
    public void aumenteLucros(Financeiro financeiro){
    1 vpDeVendas.aumenteVendasTrimestralmente( );
    2 this.verificaDadosContábeis();
    // analisa estratégia de marketing
    3 vpDeVendas.getGerDeVendas( ).monitoraMarketing( ); . . .
    Estoque estoque = new Estoque();
    4 estoque.getSaldoGeral();
    5 financeiro.consisteDados();
    }
    . . .
    VicePresidenteDeVendas vpDeVendas;
    }
    1. A5
    2. B4
    3. C2
    4. D1
    5. E3
  5. 5Reconheça o conceito de redirecionamento no código Java da questão 3, seguindo o seguinte formato: [classe delegadora–método delegador/objeto delegado–classe delegada–método delegado]
    1. AVicePresidenteDeVendas–aumenteVendasTrimestralmente( )/gerDeVendas–GerenteDeVendas–aumenteVendasTrimestralmente()
    2. BPresidente–aumenteLucros( )/vpDeVendas–VicePresidenteDeVendas–aumenteVendasTrimestralmente( )
  6. 6Ao usar os princípios "Law of Demeter", "Tell, Don't Ask!" e delegação, chegamos ao código Java abaixo. Está tudo correto?

    public class GerenteDeVendas{
    . . .
    public void aumenteVendasTrimestralmente( ){. . .}
    1 public void monitoraMarketing( ){. . .}
    . . .
    }
    public class VicePresidenteDeVendas{
    public void aumenteVendasTrimestralmente( ){. . .}
    2 public void analisaEstrategiaMarketing( ){
    3 gerDeVendas.monitoraMarketing( );
    4 }
    . . .
    GerenteDeVendas gerDeVendas;
    }
    public class Presidente{
    . . .
    public void aumenteLucros(Financeiro financeiro){
    . . .
    5 vpDeVendas.analisaEstrategiaMarketing( );
    }
    . . .
    VicePresidenteDeVendas vpDeVendas;
    }
    1. ANão
    2. BSim
  7. 7Considerando a "Law of Demeter", o que eu não posso fazer:
    1. AUsar variáveis estáticas!
    2. Binvocar método de amigo
    3. Cinvocar método de amigo de amigo de amigo
    4. Dinvocar método de amigo de amigo
  8. 8Diferença entre delegação e redirecionamento:
    1. ADelegação é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é igual a m!

    2. BDelegação é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é diferente de m!

    3. CRedirecionamento é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é diferente de m!

    4. DRedirecionamento é quando um método m apenas repassa sua responsabilidade para outro método de outra classe, cujo nome desse outro método é igual a m!

Informações

Descrição
Questões realizadas no curso de Orientação a Objetos do ITA (Coursera). Aproveite e faça o curso você também, excelente material de aprendizado.
Idioma
Português
Visualizações
66
Avaliação
Ainda sem avaliações
Avalie este quiz
Avalie este quiz

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?