Questões de Concurso sobre Orientação a Objetos

 
 
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
 
1.865 questões encontradas
Questões por página
20
Mais recentes
 

Em uma linguagem de programação orientada a objetos, um método é void quando


A

não possui atributos.


B

requer a passagem de argumentos.


C

não retorna valor após o processamento do escopo.


D

não necessita da definição do escopo.


E

não possui modificador de acesso.

No paradigma de Programação Orientada a Objetos, o conceito de encapsulamento está diretamente relacionado ao uso de modificadores, que são aplicados a atributos e métodos para definir como esses elementos podem ser acessados dentro da estrutura do software. Esses modificadores são declarados diretamente nas classes e influenciam o nível de acesso entre os componentes do sistema. Nesse contexto, assinale a alternativa correta.


A

Um método declarado como private pode ser acessado livremente por qualquer classe externa ao pacote.


B

Um atributo declarado com o modificador public limita seu acesso a classes que fazem parte de uma hierarquia de herança.


C

Um método declarado com o modificador public pode ser acessado a partir de qualquer classe, inclusive dentro do mesmo pacote, não estando restrito a ele.


D

Um atributo declarado como protected impede o acesso por subclasses.


E

Um método declarado como private permite acesso direto por qualquer outra classe do mesmo pacote.

A Programação Orientada a Objetos (POO, ou Object-oriented programming, OOP) é um paradigma de programação utilizado para representar dados e métodos, que é baseada na noção de criar um modelo do problema de destino em seus programas.


Relacione os elementos de Programação Orientada a Objetos (POO) com suas respectivas definições:


1. Classe

2. Objeto

3. Atributo

4. Método


( ) É qualquer módulo que contém rotinas (ou módulos de procedimentos e/ou funções) e estruturas de dados capaz de interagir com outros módulos similares, trocando mensagens (como uso de passagem de parâmetros por referência).

( ) É uma categoria descritiva geral, que abrange o conjunto de objetos que compartilham uma ou mais características quanto a seus itens de dados e procedimentos associados.

( ) É a característica que possibilita alterar a funcionalidade de um atributo, realizando o controle lógico que refletirá uma ação (designar um comportamento).

( ) É cada uma das propriedades que definem um objeto ou entidade.


Assinale a opção que indica a relação correta na ordem apresentada.


A

4 – 2 – 3 – 1.


B

3 – 4 – 1 – 2.


C

1 – 3 – 2 – 4.


D

2 – 1 – 4 – 3.


E

2 – 4 – 3 – 1.

Na programação orientada a objetos, qual é a definição CORRETA de polimorfismo?


A

Permite que uma classe herde atributos e métodos de outra classe. Isso promove a reutilização de código e cria uma hierarquia de classes.


B

Permite que objetos de diferentes classes respondam de maneira semelhante a mensagens ou métodos. Isso promove a flexibilidade e a extensibilidade do sistema.


C

É uma característica de um objeto que descreve seu estado.


D

É o conceito de esconder os detalhes internos de uma classe e fornecer uma interface pública para interagir com o objeto. Isso promove a modularidade e o controle sobre o acesso aos atributos e métodos.

Java é uma linguagem de programação orientada objetos, lançada em 1995, pela Sun Microsystems, que, ao longo dos anos, tornou-se uma das linguagens mais populares utilizadas devido à sua portabilidade e eficiência. Sobre os conceitos fundamentais da linguagem Java, marque V para as afirmativas verdadeiras e F para as falsas.


( ) Uma classe pode herdar de várias classes ao mesmo tempo.

( ) O uso de “super” é restrito à chamada de métodos do construtor da classe pai.

( ) A palavra-chave “final” pode ser usada para prevenir que um método seja sobrescrito.

( ) A interface em Java pode conter apenas métodos abstratos.


A sequência está correta em


A

F, F, F, F.


B

V, F, V, F.


C

F, F, V, F.


D

V, V, V, V.

Existe uma palavra em Programação Orientada a Objetos que é polimorfismo, assinale a alternativa que apresenta seu significado.


A

Herança de classes


B

Sobrecarga de métodos


C

Acesso controlado aos atributos


D

Encapsulamento de dados


E

Implementação de interfaces

A respeito dos pilares da programação orientada a objetos, é correto afirmar que


A

polimorfismo é a capacidade de uma classe de possuir várias instâncias simultaneamente.


B

métodos protegidos de uma classe não podem ser acessados por classes-filhas.


C

as classes-filhas podem acessar os métodos privados de uma classe-pai.


D

a hierarquia composta por uma classe que define métodos e atributos utilizados por classes derivadas é denominada herança.


E

classes abstratas entregam a implementação padrão de comportamentos a classes derivadas, de modo que estas não possam reimplementá-los.

Um sistema está sendo desenvolvido para gerenciar os pedidos de uma loja online e a equipe de desenvolvimento está decidindo qual paradigma de programação utilizar para facilitar a organização e manutenção do código. Analise as alternativas a seguir e assinale a que caracteriza corretamente o paradigma de programação orientada a objetos (OO) em comparação com o paradigma imperativo:


A

O paradigma de programação orientada a objetos é adequado apenas para sistemas de pequeno porte, enquanto o paradigma imperativo é preferido para sistemas grandes devido à sua capacidade de organizar o código em objetos e classes.


B

O paradigma de programação orientada a objetos organiza o código em funções e procedimentos, enquanto o paradigma imperativo organiza o código em classes e objetos que representam entidades do mundo real.


C

O paradigma imperativo facilita a modularização do código ao agrupar dados e comportamentos em uma mesma estrutura, enquanto o paradigma de programação orientada a objetos prioriza uma sequência linear de instruções.


D

No paradigma de programação orientada a objetos, o foco está na criação de classes e objetos, que agrupam dados e comportamentos relacionados, enquanto no paradigma imperativo, o foco está na sequência de instruções e na alteração direta do estado do programa.

class carro:

def __init__(self, nome):

self.nome = nome


def acao(self):

print("corre")


class aviao:

def __init__(self, nome):

self.nome = nome


def acao(self):

print("voa")


objetoA = carro("x3")

objetoB = aviao("f15")


print("\nAção:")

for x in (objetoA, objetoB):

x.acao()


A seguir, é apresentado o resultado do código precedente, desenvolvido em Python, ao final de sua execução.

Ação:

corre

voa


Com base nessas informações, é correto afirmar que o princípio da orientação a objeto utilizado nesse programa, especialmente em relação ao método acao, é a(o)


A

abstração.


B

encapsulamento.


C

herança.


D

polimorfismo.


E

recursividade.

Observe o diagrama a seguir.

Imagem associada para resolução da questão

Qual é a forma correta de criar um objeto na linguagem de programação Java utilizando o conceito de polimorfismo?


A

Aluno a = new Pessoa();


B

Funcionario f = new Professor();


C

Pessoa p = new Aluno();


D

Funcionario f = new Funcionario();

Com relação à linguagem de programação C++ e o paradigma da orientação a objeto, analise as afirmativas a seguir.


I. Uma classe define o comportamento dos objetos que são instâncias da classe.

II. Em C++ é permitido criar classes derivadas, seguindo o conceito de herança de classes.

III. O polimorfismo permite que objetos de classes diferentes respondam de forma diferente à mesma função.


Está correto o que se afirma em


A

I, apenas.


B

II, apenas.


C

I e II, apenas.


D

II e III, apenas.


E

I, II e III.

Com base nos conceitos essenciais de programação orientada a objetos em Java, em relação entre herança e abstração, destacando como esses dois conceitos estão interligados e contribuem para a modelagem e organização eficientes de sistemas complexos, marque a opção que apresenta corretamente esse conceito.


A

Herança é um tipo de abstração em Java.


B

Abstração é um tipo de herança em Java.


C

Herança e abstração são conceitos independentes em Java


D

Herança e abstração são mutuamente exclusivas em Java.

Com base no conceito de “encapsulamento” e “polimorfismo” na Programação Orientada a Objetos, assinale a alternativa INCORRETA.


A

O encapsulamento permite que os atributos de uma classe sejam acessados apenas através de métodos específicos, proporcionando um controle maior sobre como esses atributos são manipulados.


B

O uso de modificadores de acesso restritivos no encapsulamento não permite que atributos de uma classe sejam modificados diretamente de fora da classe, mantendo a integridade do estado do objeto.


C

O polimorfismo permite que métodos com o mesmo nome, mas implementações diferentes, possam ser chamados em diferentes classes, dependendo do contexto da chamada.


D

O encapsulamento, ao isolar as partes de um programa, dificulta a implementação de novas funcionalidades, já que a modificação de uma parte pode afetar outras partes do código.


E

O padrão de nomenclatura com get<nomeDoAtributo> e set<nomeDoAtributo> é uma prática comum para acessar e modificar_atributos encapsulados de uma classe.

No que diz respeito à programação orientada a objetos, assinale a alternativa incorreta.


A

Uma classe pode ser utilizada como base para criar objetos.


B

Objetos são instâncias de uma classe.


C

Um objeto não armazena valores.


D

Métodos públicos podem ser acessados fora do objeto em que foi criado.

A programação orientada a objetos (POO) mudou a forma como desenvolvedores criam aplicações, enfatizando a organização do código em unidades lógicas. Qual é um dos principais princípios da programação orientada a objetos?


A

Evitar o uso de classes e objetos.


B

Encapsular de dados e funções em objetos.


C

Concentrar código em procedimentos únicos.


D

Ignorar a herança e a reutilização de código.

Há, na orientação a objetos, situações em que se inserem, no fluxo de um programa, a interpretação e o tratamento de uma situação que pode causar a suspensão da execução normal de um programa. A essa forma de programação da orientação a objetos, especificamente, atribui-se a denominação de tratamento de


A

mensagens.


B

pacotes.


C

interfaces.


D

sobrecarga.


E

exceção.

Leia o trecho e assinale a alternativa que preencha a lacuna corretamente.


“O _________________ é um conceito fundamental na POO, que visa controlar o acesso aos atributos e métodos de um objeto. Isso é alcançado através da definição de níveis de visibilidade, como público, protegido e privado. A ideia por trás deste pilar, é que os detalhes internos de um objeto devem ser ocultados do mundo exterior, permitindo que apenas as operações essenciais sejam realizadas por meio de uma interface pública. Ao ocultar os detalhes internos, é possível proteger os dados de alterações indesejadas e manter a integridade do objeto. Esse pilar promove a modularidade, facilita a manutenção e evolução do código e ajuda a prevenir erros decorrentes de acessos incorretos aos dados.”


A

Encapsulamento.


B

Herança.


C

Abstração.


D

Polimorfismo.

A “concentração nos aspectos essenciais de um determinado objeto” e o “compartilhamento de atributos e operações entre classes em um relacionamento hierárquico” caracterizam-se como dois conceitos da orientação a objetos conhecidos, respectivamente, por:


A

compartilhamento e encapsulamento


B

encapsulamento e polimorfismo


C

polimorfismo e abstração


D

abstração e herança

No contexto do Microsoft COM (Component Object Model), a interface que permite que os clientes obtenham ponteiros para outras interfaces em um determinado objeto, por meio do método QueryInterface, é:


A

IBasic.


B

IUnknown.


C

AddRef.


D

Release.


E

IInterfacePointer.

Os códigos reproduzidos abaixo (CÓDIGO-01 e CÓDIGO-02) foram desenvolvidos na linguagem C#. Ambos resultam na mesma saída (OUTPUT).


CÓDIGO-01


Console.WriteLine ("***Sounds animals.***");

Tiger tiger = new(); tiger.Sound();

Dog dog = new(); dog.Sound();

Console.ReadKey();

class Tiger

{ public void Sound() {Console.WriteLine("Tigers roar."); } }

class Dog

{ public void Sound() { Console.WriteLine("Dogs bark."); } }


CÓDIGO-02


Console.WriteLine ("***Sounds animals.***");

IAnimal animal = new Tiger(); animal.Sound();

animal = new Dog(); animal.Sound();

interface IAnimal

{ void Sound(); }

class Tiger : IAnimal

{ public void Sound() { Console.WriteLine("Tigers roar."); } }

class Dog : IAnimal

{ public void Sound() { Console.WriteLine("Dogs bark."); } }


OUTPUT


***Sounds animals.***

Tigers roar.

Dogs bark.


Assinale a opção que indica o pilar da programação orientada a objetos que diferencia o segundo código (CÓDIGO-02) do primeiro.


A

Encapsulamento.


B

Polimorfismo.


C

Herança.


D

Sobrecarga.

   
Gerar simulado