Teste 1: Programação Orientada a Objetos

 Juliana Jenny Kolb

Home >Simulados on-line > Questões de Concursos > Tecnologia da Informação (TI) > Programação Orientada a Objetos Questões Programação OO

Teste 1: Programação Orientada a Objetos

Questões extraí­das de concursos públicos e/ou provas de certificação. Cada teste apresenta no máximo 30 questões.

Results

#1. (ESAF – 2004 – CGU) Na programação Orientada a Objetos

#2. (FCC – 2011 – INFRAERO) Sobre orientação a objetos, é correto afirmar:

#3. (FUNCAB – SESACRE/2014) Alguns termos relacionados à programação orientada a objetos estão disponibilizados na Coluna I. Estabeleça a correta correspondência com os seus significados, disponibilizados na Coluna II.
Coluna I
1. Herança
2. Encapsulamento
3. Polimorfismo
4. Abstração
Coluna II
( ) Concentração nos aspectos essenciais de um objeto.
( ) Compartilhamento de atributos e operações entre classes, com base em um relacionamento hierárquico.
( ) Mesma operação poder atuar de modos diversos em classes distintas.
( ) Também conhecido como ocultamento de informações.
Asequência correta é:
? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Sequência Correta: 4, 1, 3 e 2.  </br>  </br>

(Abstração) Concentração nos aspectos essenciais de um objeto.   </br>

(Herança) Compartilhamento de atributos e operações entre classes, com base em um relacionamento hierárquico.   </br>

(Polimorfismo) Mesma operação poder atuar de modos diversos em classes distintas.   </br>

(Encapsulamento) Também conhecido como ocultamento de informações.   </br>

Para ler mais sobre o assunto, acesse: Encapsulamento ( )

 

#4. (ESAF – 2004 – CGU) Analise as seguintes afirmações relativas a programação Orientada a Objetos:
I. As informações em um programa desenvolvido segundo a orientação a objetos são armazenadas, por herança, nas classes.
II. Em um programa, os objetos que precisam ser armazenados em memória não volátil são denominados objetos persistentes.
III. Na programação orientada a objetos, quando se utiliza um Banco de Dados relacional, deve-se criar métodos para mapear, em tabelas, os objetos que serão armazenados.
IV. Em uma aplicação podem existir múltiplas instâncias de uma mesma classe e estas conterão diferentes atributos de instâncias.
Estão corretos os itens:

#5. (IESES – TRE-MA/2015) Na programação orientada a objetos, o relacionamento do tipo herança entre classes traz alguns benefícios dos quais se destacam:

#6. (FGV – IBGE/2016) Em Orientação a Objetos, para que uma subclasse de uma classe possa ter seu próprio comportamento, e mesmo assim compartilhar algumas das funcionalidades da classe pai, deve-se implementar: ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Questão um tanto polêmica, mas, segue comentário de Hugo R:

“Quando diz que uma subclasse tem comportamento próprio, significa que ela pode fazer outra implementação de métodos da superclasse, o que, de fato, caracteriza polimorfismo.”

Para ler mais sobre o assunto, acesse: Polimorfismo ( )

#7. (CESPE –  TRE-TO/2017) Na orientação a objetos, a alteração do comportamento dos métodos herdados das superclasses para um comportamento mais específico nas subclasses, de forma a se criar um novo método na classe filha que contém a mesma assinatura e o mesmo tipo de retorno, relaciona-se a

#8. (FCC –  TRF – 5ª REGIÃO/2017) Na programação orientada a objetos são utilizados classes e métodos. Um método

#9. (CONSULPLAN –  TRE-RJ/2017) “Uma _________________ é uma classe cuja finalidade principal é definir uma interface comum para suas subclasses. As operações que uma classe _________ declara, mas não implementa, são chamadas de operações _________________.” Assinale a alternativa que completa correta e sequencialmente a afirmativa anterior.

#10. (INAZ do Pará –  CFF/2017) Alguns tipos de banco de dados e certas ferramentas de desenvolvimento de software atualmente utilizam o paradigma da orientação a objetos. Assinale a afirmação correta quanto aos fundamentos da tecnologia de orientação a objetos.  ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Correto:  </br>

– O conceito de herança torna possível que uma classe “herde” em sua definição, variáveis (dados) e métodos (código) de outra classe já existente.  </br>

  • Para ler mais sobre o assunto, acesse: Herança ( )    </br>  </br>

Errado:  </br>

– As classes são instâncias dos objetos que elas próprias definem.   </br>

  • Uma classe é uma descrição que abstrai um conjunto de objetos com características similares. Mais formalmente, é um conceito que encapsula abstrações de dados e procedimentos que descrevem o conteúdo e o comportamento de entidades do mundo real, representadas por objetos.
  • Para ler mais sobre o assunto, acesse: Classe ( )  </br>

– A interface é um recurso da orientação a objeto utilizado em Java que define ações que não devem ser obrigatoriamente executadas, mas que cada classe pode executar de forma igual.  </br>  </br>

– O conceito de polimorfismo possibilita que um objeto seja declarado como pertencendo a mais de uma classe simultaneamente </br>

  • O polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, um mesmo método pode apresentar várias formas, de acordo com o seu contexto.
  • Para ler mais sobre o assunto, acesse: Polimorfismo ( )    </br>  </br>

– O conceito de encapsulamento prevê que os objetos sejam montados a partir de cápsulas especiais que permitem o acesso aos seus dados por qualquer entidade externa.  </br>

  • O encapsulamento consiste no fornecimento de serviços bem definidos, sem necessariamente esclarecer como esses serviços são executados.

  • É o princípio pelo qual cada componente de um programa deve agregar toda a informação relevante para sua manipulação como uma unidade (uma cápsula). Aliado ao conceito de ocultamento de informação.

  • Para ler mais sobre o assunto, acesse: Encapsulamento ( )

#11. Na programação orientada a objetos há um recurso que agrega valor às modelagens e implementação de sistemas/aplicativos: a herança. Esse mecanismo permite criar novas classes a partir de classes já existentes, princípio conhecido em modelagem de sistemas como especialização. Correspondem a vantagens do uso dos conceitos de herança, EXCETO:

#12. (PUC-PR –  TTJ-MS/2017) Sobre herança em Programação Orientada a Objetos, considere as afirmativas a seguir. 
 I. Uma subclasse é uma instância específica da superclasse. 
 II. A técnica de herança é essencial para o reuso e extendabilidade de classes. 
III. Polimorfismo é a habilidade de uma subclasse realizar herança múltipla de diferentes classes. 
 Está (ão) CORRETA(S) apenas as assertivas:  

#13. (CESPE –  TRT – 7ª Região (CE)/2017) Acerca de orientação a objetos, assinale a opção correta.

#14. (IBFC –  TJ-PE/2017) Em um programa orientado a objetos, verifica-se que a classe X estende a classe Y. Ou seja, pode-se afirmar, pelos preceitos da POO (Programação Orientada a Objetos), que:

#15. (UEL/COPS – UEL/2015) Assinale a alternativa que apresenta, corretamente, o conceito de programação orientada a objetos que promove a reutilização de software.

#16. (UEL/COPS – UEL/2015) Sobre a programação orientada a objetos no Java, considere as afirmativas a seguir.
I. Métodos static herdados não podem ser sobrescritos.
II. Uma classe abstrata é criada com a palavra chave abstract.
III. Uma classe abstrata está impedida de possuir métodos abstratos.
IV. Construtores static podem ser declarados como abstract.
Assinale a alternativa correta.

#17. (UPENET/IAUPE –  UPE/2017) Sobre Análise e Projeto Orientado a Objetos, analise as afirmativas abaixo: 
 I. A análise modela com foco no entendimento do domínio do problema, enquanto o projeto está relacionado à modelagem da solução do problema. 
 II. A informação levantada na Análise deve ser discutida e aprovada pelo cliente. 
 III. As atividades do projeto são direcionadas ao programador. 
 IV. Não é verdade que haja correspondência 1-para-1 entre entidades no modelo de análise e entidades no modelo de projeto. 
 Quantas afirmativas estão CORRETAS? 

#18. (FUNCERN –  IF-RN/2017) Analise a figura a seguir, que representa graficamente uma classe:   
   
Na classe Exemplo, a visibilidade do atributo2 é do tipo ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Existem basicamente três modos de visibilidade:

    • ( ) público: indica que o atributo ou método pode ser utilizado por qualquer classe;

 

    • (#) protegido: determina que somente a classe possuidora do atributo ou método ou suas sub-classes podem ter acesso ao mesmo;

 

    • (-) privado: significa que somente a classe possuidora do atributo ou método poderá utilizá-lo.

 

Para ler mais sobre o assunto, acesse: Visibilidade ( )

#19. (FUNCERN –  IF-RN/2017) Quanto aos tipos de relacionamentos do paradigma orientado a objetos, a ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Correto: 

– associação especifica que objetos de um item estão conectados a objetos de outro item. 

Errado: 

– dependência determina que um item utiliza as informações e os serviços de outro item e vice-versa

    • Este relacionamento tem como objetivo identificar um certo grau de dependência de uma classe em relação à outra, ou seja, sempre que ocorrer uma mudança na classe da qual outra classe depende, esta deverá também sofrer uma mudança. 

 

– generalização permite que os objetos da classe-filha possam ser utilizados em qualquer local em que a classe-mãe ocorra e vice-versa. 

– especialização define uma relação entre itens gerais, chamados classes-filha, e itens específicos, chamados classes-mãe, dos itens gerais. 

    • O relacionamento de especialização/generalização é uma forma de associação entre casos de uso na qual existem dois ou mais casos de uso com características semelhantes, apresentando pequenas diferenças entre si. Quando tal situação ocorre, costuma-se definir um Caso de Uso Geral que descreve as características compartilhadas e então relacioná-lo com os outros Casos de Uso envolvidos (características específicas).

 

Para ler mais sobre o assunto, acesse: Diagrama de Classes ( )

#20. (FCC –  DPE-RS/2017) Considere que em um projeto orientado a objetos há uma classe com cinco métodos. Com base na métrica LCOM − Lack of Cohesion in Methods, 

#21. (FCC –  TRE-PR/2017) Os princípios SOLID reúnem cinco boas práticas para projetos Orientados a Objetos-OO. O princípio S, que se refere ao Single Responsability Principle-SRP ou Princípio de Responsabilidade Única, indica que uma classe deve ter uma e, apenas uma, razão para mudar. Considere a classe Java abaixo.  
 public class UrnaEleitoral {
public void AdicionarCandidato(String nome, int numero, int partido) { } 
       public decimal CalcularTotalVotosCandidato() { } 
       public void CadastrarPartidos() { } 
       public void CadastrarEleitores() { } 
       public void CadastrarMesarios() { } 
 }  
 Com base no princípio SRP e nas boas práticas para projetos OO, é correto afirmar:  ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

Princípio da Responsabilidade Única (SRP)  </br>

Uma classe deve fazer apenas uma coisa, deve fazê-la bem e deve fazer somente ela. Se uma classe tem mais de um motivo para ser alterada, ela não segue este princípio. Se ao se referir a uma determinada classe, você diz por exemplo: “minha classe tem as informações do cliente e salva o mesmo no banco de dados” perceba que o “e” na frase, indica mais de uma responsabilidade, ferindo assim o SRP( single responsability principle ).

 

#22. (CESPE –  TRE-BA/2017) Na orientação a objetos, o conceito de polimorfismo é implementado, em algumas linguagens, por meio da técnica de sobrecarga de métodos. Sobre a aplicação desse conceito, é possível afirmar que

#23. (CESPE –  TRE-BA/2017) A partir de uma classe derivada de uma superclasse, podem-se invocar métodos que tenham a mesma assinatura, mas comportamentos distintos, ou seja, em que haja alteração do funcionamento interno de um método herdado de um objeto pai. Na orientação a objetos, isso é possível por meio de

#24. (VUNESP – TCE-SP/2015) Na orientação a objetos, o conceito de encapsulamento corresponde à propriedade de ? A correção aparecerá no rodapé da questão, caso você erre ou não selecione uma opção de resposta.

O encapsulamento consiste no fornecimento de serviços bem definidos, sem necessariamente esclarecer como esses serviços são executados.  </br>

É o princípio pelo qual cada componente de um programa deve agregar toda a informação relevante para sua manipulação como uma unidade (uma cápsula). Aliado ao conceito de ocultamento de informação.  </br>  </br>

Para ler mais sobre o assunto, acesse: Encapsulamento ( )

#25. (FUNCAB – SESACRE/2014) São linguagens orientadas a objeto:

#26. (COPESE – UFPI/2017)  O conceito de programação orientada a objeto foi amplamente difundido a partir da evolução da linguagem de programação Smalltalk, em sua versão 80. Sobre o paradigma de programação orientada a objetos, assinale a opção INCORRETA. 

#27. (FCM – IF Baiano/2017)  Uma referência para um objeto de subclasse pode ser convertida implicitamente em uma referência para um objeto de superclasse porque um objeto de subclasse é um objeto de superclasse, por herança. Existem, portanto, maneiras possíveis de misturar e corresponder referências para superclasse e referências para subclasse com objetos de superclasse e objetos de subclasse. (DEITEL & DEITEL, 2003, p.446). 
 Analise as afirmativas abaixo com relação à possibilidade de se misturar as referências às subclasses/superclasses e assinale (V) para verdadeiro ou (F) para falso. 
 ( ) Fazer referência a um objeto de superclasse com uma referência para superclasse é simples e direto. 
 ( ) Fazer referência a um objeto de subclasse com uma referência para subclasse não é direto. 
 ( ) Fazer referência a um objeto de subclasse com uma referência para superclasse é simples e direto, porque o objeto de subclasse também é um objeto de uma superclasse. 
 ( ) Fazer referência a um objeto de superclasse com uma referência para subclasse é simples e direto. 
 De acordo com as afirmações, a sequência correta é

#28. (IBFC – EMBASA/2017) Quanto aos fundamentos básicos de programação orientada a objetos, relacione os quatro conceitos abaixo com os respectivos significados mencionados logo em seguida: 
 CONCEITOS: 
 (1) herança. 
 (2) método. 
 (3) polimorfismo. 
 (4) encapsulamento. 
 SIGNIFICADOS: 
 (A) definem as habilidades dos objetos. 
 (B) é o princípio pelo qual duas ou mais classes, derivadas de uma mesma superclasse, podem invocar métodos que têm a mesma identificação mas comportamentos distintos. 
 (C) é o mecanismo pelo qual uma classe pode estender outra classe ou, ainda, ser estendida de outra classe. 
 (D) consiste na separação de aspectos internos e externos de um objeto

#29. (FGV – IBGE/2017) O tratamento de exceções permite ao desenvolvedor gerenciar os erros durante a execução de um programa de forma organizada. 
 O seguinte bloco exemplifica o tratamento de exceções em uma linguagem orientada a objetos: 
  
 Considere que o método print exibe a mensagem passada como parâmetro na tela, que o método CopyFiles realiza operação de cópia de todos os arquivos do diretório passado por parâmetro e que a classe IOException herda de Exception.
 Utilizando o código apresentado e seu conhecimento sobre tratamento de exceções, a alternativa correta é: 

#30. (FGV – IBGE/2017) Em POO (Programação Orientada a Objetos), dizer que a classe A estende a classe B é o mesmo que: 

Ver Resultado

Deixe uma resposta