Questões de Concurso
Comentadas sobre programação orientada a objetos em programação
Foram encontradas 706 questões
A programação orientada a objeto possui pilares fundamentais em sua linguagem. Dadas as definições abaixo, identifique a alternativa que corresponda respectivamente a cada pilar.
1. Mecanismo utilizado para disponibilizar métodos que operam sobre os dados e que protegem o acesso direto indevido aos atributos de uma instância fora da classe onde estes foram declarados.
2. Mecanismo que permite criar novas classes a partir de classes já existentes, aproveitando-se das características existentes na classe a ser estendida.
3. Situação na qual um objeto pode se comportar de maneiras diferentes ao receber uma mensagem, dependendo do seu tipo de criação.
Na POO, os objetos são dependentes entre si — ou seja, os objetos não podem existir independentemente uns dos outros.
Na POO, um objeto é definido como uma construção de software que encapsula somente estado, e não comportamento.
Operações como inserir um elemento e excluir e encontrar o maior e o menor não são permitidas na estrutura do tipo fila, apenas na estrutura do tipo pilha.
I. O princípio de inversão de dependência estabelece que uma classe deve depender de implementações abstratas e não concretas, sempre que possível.
II. O princípio aberto / fechado estabelece que uma classe deve estar fechada para extensões, mas aberta para modificações.
III. O princípio da responsabilidade única é uma aplicação da propriedade de coesão, por propor que toda classe deve ter uma única finalidade.
Está(ão) correta(s) a(s) afirmativa(s)
Julgue o item, relativos a conceitos básicos sobre desenvolvimento e manutenção de sistemas e aplicações.
Na programação orientada a objetos, a técnica mais
eficaz e segura para permitir que uma classe herde todas
as características de outra classe é a herança de
implementação, a qual deve ser usada sem nenhuma
restrição.
Julgue o item a seguir, com relação aos conceitos de SOLID.
Os princípios de programação orientada a objetos que
correspondem aos princípios SOLID são: criador (creator),
especialista na informação (information expert), controlador
(controller), polimorfismo (polymorphism), fabricação pura
(pure fabrication).
No que diz respeito à Programação Orientada a Objetos, dois princípios são descritos a seguir:
I. capacidade de existirem diferentes implementações para métodos com a mesma assinatura em diferentes classes da mesma hierarquia de herança. Em sistemas que usam esse princípio, uma mesma operação pode se comportar de diferentes formas em classes distintas.
II. os valores dos atributos e os detalhes da implementação dos métodos estão escondidos de outros objetos. No âmbito dos bancos de dados, diz-se que um objeto usa esse princípio quando o estado é oculto ao usuário, e o objeto pode ser consultado e modificado exclusivamente por meio das operações a ele associadas.
Os princípios descritos em I e em II são denominados, respectivamente:
Acerca da programação orientada a objetos, da linguagem SQL e da linguagem JavaScript, julgue o item.
O encapsulamento permite que o programador realize a divisão de um programa, uma única entidade grande e monolítica,
em partes menores e independentes.
Acerca da programação orientada a objetos, da linguagem SQL e da linguagem JavaScript, julgue o item.
Na programação orientada a objetos, um subtipo herda as operações e as propriedades de seus supertipos, podendo, ainda,
acrescentar mais operações a sua própria definição.
Classe Pilha
int pop ( ) – retorna o número inteiro retirado da pilha. push ( int x ) – insere o número inteiro x na pilha.
Classe Fila
int deq ( ) – retorna o número inteiro retirado da fila. enq ( int x ) – insere o número inteiro x na fila.
Admita que o estado inicial de uma pilha (p) seja um array vazio, e que o estado inicial de uma fila (f) seja caracterizado pelo array [ 15, 90, 40 ].
Após a execução de uma sequência de operações sobre p e f, a fila assumiu o seguinte estado final: [ 35, 90, 40, 15 ]
Qual sequência de comandos levou f do estado inicial para o estado final?
Entretanto, a maioria das linguagens de programação orientadas a objetos disponibilizam um mecanismo para que o encapsulamento possa ser atenuado sob certas condições. Por exemplo, as variáveis de instância de uma classe podem ser livremente acessadas pelos métodos de instância de todas as suas subclasses.
Esse acesso é possível, caso essas variáveis sejam declaradas como
I. Inclusão de novas classes, com acréscimo de funcionalidades ao software;
II. Criação de superclasse comum a classes previamente existentes;
III. Migração de atributos ou métodos de subclasse para superclasse;
IV. Remoção de classes para a exclusão de funcionalidades consideradas indesejadas para o software;
V. Remoção de métodos de classes para a exclusão de funcionalidades consideradas indesejadas para o software; e
VI. Particionamento de uma classe existente em duas ou mais classes.
Assinale a alternativa que indica corretamente os itens da lista acima considerados procedimentos de refatoração (refactoring).