Questões de Concurso sobre Paradigmas de Programação

 
 
Disciplina
Assunto 1
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
548 questões encontradas
Questões por página
20
Mais recentes
 

Na programação orientada a objetos, empregam-se os conceitos presentes na orientação a objetos, sendo dois desses conceitos as classes e os objetos. Nesse contexto, pode-se afirmar corretamente:


A

cada classe definida na programação orientada a objetos pode possuir exclusivamente ou atributos ou métodos.


B

o número de objetos pertencentes a uma classe é limitado pelo número de atributos da classe.


C

os objetos pertencentes a uma classe têm seu comportamento estabelecido por meio de métodos e atributos.


D

uma classe constitui-se em um ente abstrato, não sendo conceito efetivamente utilizado na programação orientada a objetos.


E

o número de classes que podem ser utilizadas em um programa orientado a objetos deve ser declarado logo no início do programa.

Em desenvolvimento de software orientado a objetos, o princípio SOLID conhecido como Inversão de Dependência estabelece que


A

apenas alterações potenciais na especificação do software devem ser capazes de afetar a especificação de uma classe.


B

classes devem ser abertas para extensões e fechadas para modificações.


C

se deve separar funções de diferentes naturezas em interfaces diferentes, sem construir uma interface única de propósito geral.


D

uma implementação de função que recebe referências para objetos de determinada classe deve ser capaz de lidar com objetos de suas subclasses sem conhecê-las.


E

classes devem depender de interfaces ou classes abstratas, em vez de classes concretas.

No paradigma de programação orientada a objetos, qual princípio preconiza que cada unidade de código deve ser responsável por possuir informações e executar tarefas que dizem respeito somente ao conceito que ela pretende representar?


A

Herança.


B

Polimorfismo.


C

Encapsulamento.


D

Acoplamento.


E

Coesão.

Qual seria uma possível razão para se criar uma classe abstrata, já que não é possível ter qualquer instância concreta dela?


A

Permitir aderência de todas as suas subclasses à interface definida pela classe abstrata.


B

Prevenir a implementação de métodos indesejados em suas subclasses.


C

Reservar memória para um tipo não especificado de classe.


D

Reduzir o tempo de processamento.


E

Dispensar a implementação de métodos construtores nas subclasses.

O paradigma orientado a objetos surgiu na década de 1960, e até hoje vem sendo aprimorado e largamente utilizado. Diversas linguagens do dia de hoje são orientadas por este paradigma, um dos conceitos mais importantes são classes e objetos, assinale a alternativa que descreve a principal diferença entre classes e objetos.


A

Uma classe é utilizada para definir métodos e o objeto utilizado para criar métodos em interfaces


B

Uma classe é uma instância de uma interface


C

Uma classe é uma representação abstrata de um objeto, enquanto um objeto é uma instância concreta dessa classe


D

Uma classe é uma instância de um objeto

O paradigma orientado a objetos possui quatro pilares fundamentais, sendo eles abstração, encapsulamento, herança e polimorfismo. Estes pilares orientam técnicas e conceitos robustos para o desenvolvimento utilizando este paradigma. Assinale a alternativa correta sobre o que é late binding (ligação tardia) em relação ao pilar polimorfismo.


A

É a capacidade de associar um método chamado em tempo de criação do projeto


B

É a capacidade de associar um método chamado em tempo de compilação


C

É a capacidade de associar um método chamado com a implementação correta durante o tempo de execução, ao em vez de durante o tempo de compilação


D

É a capacidade de criar as classes e vincular a outras em tempo de execução

Ao utilizar o paradigma orientado a objetos, dentre os 4 pilares fundamentais, um dos pilares importantes é o polimorfismo. Diante do exposto, qual o objetivo do polimorfismo.


A

É a capacidade de objetos de diferentes classes responderem de maneira semelhante a uma mesma mensagem


B

É a capacidade do objeto se comunicar com a classe


C

É a capacidade dos objetos trocarem mensagens com outro sistema


D

É a capacidade de objetos trocarem mensagens via protocolo HTTP

Sob qual pilar da Programação Orientada a Objetos (POO), estão os relacionamentos entre classe base e classe derivada?


A

Divisão e conquista


B

Encapsulamento


C

Polimorfismo


D

Abstração


E

Herança

No paradigma orientado a objetos, é possível definir diferentes tipos de hierarquias entre classes, por meio de relacionamentos como herança, associação, composição e agregação. Compreender as diferenças entre tais hierarquias é fundamental durante a análise orientada a objetos, a fim de se representar a estrutura das classes com fidelidade ao domínio e à precisão semântica.


Assinale a alternativa que descreve corretamente a diferença entre os relacionamentos de composição e a agregação no paradigma orientado a objetos.


A

A composição é uma relação em que os objetos são criados dinamicamente, enquanto a agregação é uma relação em que os objetos são criados estaticamente.


B

A composição é utilizada para representar uma ligação entre dois objetos, enquanto que a agregação é utilizada para representar uma ligação entre duas classes.


C

A composição é utilizada quando o atributo pertence à classe (atributo static), enquanto que, na agregação, cada objeto define seus agregados (atributo tradicional).


D

A composição é uma relação em que os objetos são permanentemente ligados (atributos final), enquanto a agregação é uma relação temporária que pode ser alterada ao longo do tempo.


E

A composição implica que a existência do objeto composto depende da existência do objeto que o contém, enquanto, na agregação, os objetos têm uma relação mais fraca e podem existir independentemente.

Analise as afirmativas abaixo relacionadas aos conceitos de orientação a objetos.


1. A sobreposição (override) de métodos ocorre quando classes filhas reimplementam métodos definidos pelas classes pai.

2. Nenhum atributo de nenhum objeto em nenhuma circunstância pode ter seu valor alterado sem utilizar um método explicitamente declarado para tal.

3. Especialização ocorre quando define-se uma ou mais subclasses a partir de uma superclasse.


Assinale a alternativa que indica todas as afirmativas corretas.


A

É correta apenas a afirmativa 2.


B

São corretas apenas as afirmativas 1 e 2.


C

São corretas apenas as afirmativas 1 e 3.


D

São corretas apenas as afirmativas 2 e 3.


E

São corretas as afirmativas 1, 2 e 3.

São ocorrências válidas de, ou conceitos relacionados a, herança no contexto de conceitos de orientação a objetos.


1. Sobrecarga de métodos

2. Sobreposição de métodos

3. Especialização

4. Superclasses

5. Subclasses


Assinale a alternativa que indica todas as afirmativas corretas.


A

São corretas apenas as afirmativas 1 e 2.


B

São corretas apenas as afirmativas 4 e 5.


C

São corretas apenas as afirmativas 1, 2 e 3.


D

São corretas apenas as afirmativas 3, 4 e 5.


E

São corretas as afirmativas 1, 2, 3, 4 e 5.

Alguns sistemas requerem um maior dinamismo na sua execução, com a necessidade de ajustar o seu comportamento, de acordo com mudanças no cenário de execução. Nesse sentido, o padrão de projetos State pode ser um aliado do desenvolvedor. O padrão permite que um objeto altere seu comportamento dinamicamente, com base nas mudanças ocorridas em seu estado, sem a necessidade de mudar de classe ou sequer de ser instanciado novamente.


Assinale a alternativa que apresenta os conceitos da Programação Orientada a Objetos que são responsáveis pelo dinamismo do objeto implementado, utilizando o padrão de projetos State.


A

Associação e encapsulamento.


B

Delegação e polimorfismo.


C

Interfaces e associação.


D

Polimorfismo e interfaces.


E

Encapsulamento e delegação.

O conceito de orientação a objetos baseia-se na compreensão de como nós, seres humanos, percebemos o nosso ambiente, nomeadamente sob a forma de objetos e funções e suas interações. A respeito de POO, informe se é verdadeiro (V) ou falso (F) para o que se afirma e assinale a alternativa com a sequência correta.


( ) O comportamento do objeto é determinado pelos métodos da classe. As classes podem ser derivadas de outras classes.

( ) O encapsulamento de dados é a ocultação de detalhes da implementação. O acesso direto à estrutura de dados interna é impedido e só pode ocorrer por meio de interfaces definidas.

( ) Polimorfismo denota que objetos diferentes podem reagir de forma diferente à mesma mensagem.

( ) A reutilização de componentes de software na forma de classes geralmente diminui a qualidade do software e aumenta os custos.


A

V – F – V – F.


B

V – V – F – F.


C

V – V – V – F.


D

V – F – F – F.

No contexto da programação de computadores, o acoplamento


A

é sinônimo de coesão.


B

é baixo quando existe uma conexão forte entre dois módulos.


C

é alto quando um componente de software consegue operar de forma praticamente independente do outro.


D

diz respeito ao propósito de um componente.


E

corresponde ao grau de interdependência entre dois componentes de um software.

Programação orientada a objetos é um paradigma de programação que se baseia na ideia de objetos que interagem entre si para realizar tarefas. Selecione a alternativa que mostra a técnica que o objeto “cachorro” usa para acessar os métodos mostrados no seguinte código em Java.


Imagem associada para resolução da questão


A

Herança


B

Polimorfismo


C

Listas encadeadas


D

Estruturas


E

Sobrecarga

No contexto da orientação a objetos, considere as seguintes afirmações sobre herança.


I - Herança é um dos diferenciadores-chave entre sistemas convencionais e sistemas orientados a objetos. Uma subclasse Y herda todos os atributos e operações associadas à sua superclasse X, ou seja, todas as estruturas de dados e as operações de X ficam imediatamente disponíveis para Y.

II - A herança pode proporcionar benefício significativo ao projeto, mas, se ela for usada de forma não apropriada, pode complicar um projeto desnecessariamente e levar a um software passível de erros e difícil de manter.

III - Em cada nível de uma hierarquia de classes com herança, novos atributos e operações não podem ser acrescentados àqueles que foram herdados de níveis mais altos da hierarquia.


Quais estão corretas?


A

Apenas I.


B

Apenas I e II.


C

Apenas I e III.


D

Apenas II e III.


E

I, II e III.

Com relação aos conceitos de orientação a objetos em Java, analise os itens a seguir:


I - A operação de casting é usada quando o objetivo é ajustar o retorno de um método com a atribuição a uma variável. Esse tipo de conversão é possível quando os tipos de dados são objetos (por exemplo com o uso de herança) e não em tipos primitivos.

II - O uso de polimorfismo está intimamente relacionado ao mecanismo de upcasting.

III - Uma interface não pode ser instanciada, mas podem ser definidas referências do seu tipo.

IV - Uma interface é formalmente uma classe abstrata, somente com atributos constantes(final) e estáticos(static) e métodos sem corpo. Estes deverão ser implementados pelas classes que irão implementar a interface.


Em relação aos itens acima, pode-se afirmar:


A

Os itens I, II e III são verdadeiros.


B

Somente o item I é falso.


C

Os itens III e IV são falsos.


D

Somente o item II é verdadeiro.


E

Os itens I e II são verdadeiros.

A orientação a objetos é um paradigma de programação que utiliza os conceitos de objetos e classes. Sobre o assunto, analise as assertivas abaixo e assinale a alternativa correta.


I. Facilita a associação da máquina com o mundo real, uma vez que tudo pode ser representado na esfera digital.

II. Os elementos do mundo real são representados por objetos que são criados por meio de classes.

III. Os objetos armazenam dados e possuem comportamentos definidos por seus atributos.


A

Todas estão corretas.


B

Todas estão incorretas.


C

Apenas I e II estão corretas.


D

Apenas I e III estão corretas.


E

Apenas II e III estão corretas.

Na programação orientada a objetos, o conceito de __________ representa a capacidade de um método comportar-se de forma diferente dependendo do objeto instanciado.


Assinale a alternativa que preenche corretamente a lacuna do trecho acima.


A

polimorfismo


B

interface


C

pacote


D

encapsulamento


E

herança

Na utilização da orientação a objetos, o conceito em que há uma única superclasse e várias subclasses criadas, e o objeto responde a um conjunto comum de operações de modo diferente, é conhecido como


A

herança simples.


B

cardinalidade.


C

encapsulamento.


D

abstração.


E

polimorfismo.

   
Gerar simulado