Questões de Concurso
Sobre orientação a objetos em engenharia de software
Foram encontradas 1.154 questões
Observe a seguinte representação de um Diagrama de Classes UML:

Nesse diagrama, as classes CINF1, CINF2 e CINF3 são Filhos da classe Pai CSUP. Considerando esse quadro, o método ConstroiC(), existente em todas as classes, pode ser considerado, dentro da ideia de Orientação a Objeto, como um tipo de aplicação de:
Diante dessa incumbência, qual padrão de projeto estrutural você deve usar para agir como um substituto ou representante dos objetos reais, garantindo o controle de acesso?
Analise as sentenças abaixo, baseadas na obra de Sommerville a respeito de herança:
(SOMMERVILLE, Ian. Engenharia de Software. 9 ed. São Paulo: Pearson Prentice Hall, 2011, p. 148, 250 a 251)
I - O problema com a herança na programação orientada a objetos é que o código associado com um objeto não está concentrado em um só lugar, dificultando a compreensão do comportamento do objeto e possibilitando que se ignorem erros de programação.
II - A herança, quando combinada com ligações dinâmicas, pode causar problemas de timing em tempo de execução. Diferentes instâncias de um método podem ser vinculadas a uma chamada, dependendo dos tipos de parâmetros e, por consequência, diferentes quantidades de tempo serão despendidas na busca pela instância do método correto.
III - Herança faz testes de classes de objeto mais complicados, já que a operação que é herdada pode fazer suposições sobre outras operações e atributos. Essas operações podem não ser válidas em algumas subclasses que herdam a operação. Portanto, é necessário testar a operação herdada em todos os contextos de uso.
Estão CORRETAS a(s) afirmação(ões):
O _______ permite atribuir responsabilidades adicionais a um objeto dinamicamente, facilitando o tratamento de objetos de diferentes classes de forma uniforme. Já o ______ fornece um objeto representante ou um marcador de outro objeto para controlar o acesso ao mesmo.
class Legislacao { public void aplicar() { System.out.println("Legislação aplicada"); } } class LeiComplementar extends Legislacao { @Override public void aplicar() { System.out.println("Lei Complementar aplicada"); } } class LeiOrdinaria extends Legislacao { @Override public void aplicar() { System.out.println("Lei Ordinária aplicada"); } } public class Teste { public static void main(String[] args) { Legislacao minhaLei = new LeiComplementar(); Legislacao outraLei = new LeiOrdinaria(); minhaLei = outraLei; minhaLei.aplicar(); } }
Assinale a alternativa que mostra a saída da execução desse código:
Acerca da linguagem de modelagem unificada (UML), dos diagramas utilizados na análise orientada a objetos (AOO) e do suporte técnico aos usuários de informática, julgue o item a seguir.
O diagrama de estados da AOO mostra as transições de um objeto entre diferentes estados em resposta a eventos.
No que diz respeito à linguagem Python, ao JSON e aos diagramas utilizados na análise orientada a objetos, julgue o item a seguir.
Na análise orientada a objetos, o diagrama de estados é utilizado para modelar o comportamento de um objeto ao longo do seu ciclo de vida, mostrando como ele transita entre diferentes estados.
No que diz respeito à linguagem Python, ao JSON e aos diagramas utilizados na análise orientada a objetos, julgue o item a seguir.
O diagrama de pacotes organiza os elementos do sistema em grupos lógicos, mostrando as dependências entre eles.
O princípio de OOP que está sendo usado nesse exemplo é o de
O diagrama de classes da situação descrita é apresentado a seguir.
I. Factory;
II. Singleton;
III. Decorator;
IV. Proxy.
( ) Permite a criação de um único objeto de uma classe, garantindo um ponto de acesso global.
( ) Encapsula a criação de objetos, escondendo a lógica de instanciação dos clientes.
( ) Adiciona responsabilidades a um objeto dinamicamente, sem modificar o código da sua classe.
( ) Controla o acesso a um objeto, adicionando funcionalidades como cache, segurança ou logging.
Assinale a opção que indica a relação CORRETA, entre padrões de projeto e suas características:

As associações indicadas pelas letras X e Y no diagrama de classes apresentado acima são, respectivamente:
Determinar quando deve ser delegada a responsabilidade para outro objeto é responsabilidade do criador (creator).