Você está na página 1de 9

EXERCICIOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS

1. Fundação Carlos Chagas, 2010 – DPE-SP


A cidade de São Paulo, que possuía uma população de 10.000.000 de
habitantes, teve um aumento de mais 2.000.000 de novos habitantes.
Na associação da frase acima aos conceitos da modelagem orientada a objeto,
é correto afirmar que São Paulo, população e aumento, referem-se,
respectivamente, a:
Escolha uma:
a. objeto, atributo, implementação por um método do objeto.

b. classe, objeto, atributo.

c. classe, objeto, associação pelo método de agregação.

d. objeto, instância, operação.

e. classe, objeto, instância de classe.


2. A Linguagem C evoluiu para o C++ e sua sintaxe também serviu de base para
criação de outras linguagens, como o Java e o C#. Em qualquer de suas
derivações ou descendentes, há uma situação comum: a compilação de um
programa em qualquer dessas linguagens inicia por uma função/método
conhecido. Este método é identificado como:
Escolha uma:

a. procedure().

b. start().

c. function().

d. main().

e. program().

3. Fundação Carlos Chagas, 2012 – TRF - 2ª REGIÃO


Sobre orientação a objetos é correto afirmar:

Escolha uma:

a. Numa árvore genealógica de classes, a classe mais baixa herda os atributos e


métodos somente da superclasse no nível imediatamente acima.

b. Na hierarquia de classes, se superclasse é uma generalização de


subclasses, pode-se inferir que a subclasse é uma especialização de
superclasse.
c. As variáveis de uma classe só podem ser alteradas por métodos definidos nos
seus objetos.

d. O polimorfismo se caracteriza quando, para mensagens distintas, objetos


diferentes responderem ou agirem de forma idêntica.

3. e. Os objetos de uma classe são idênticos no que se refere à sua interface e ao


seu estado.

PaqTcPB, 2012 – UEPB


São conceitos chaves do paradigma orientado a objetos:
Escolha uma:
a. Polimorfismo por inclusão, casamento de padrões, transparência referencial e herança.

b. Casamento de padrões, herança, classes e objetos.

c. Classes, objetos, regras e funções.

d. Classes, objetos, herança e polimorfismo por inclusão.

e. Sobrecarga, inferência lógica, backtracking e herança

O paradigma orientado a objetos foca na abstração e no contexto. Sobre


orientação a objetos, é correto afirmar:
I. Uma classe é o projeto do objeto. Cada objeto criado a partir da classe terá
os mesmos os atributos.
II. Um relacionamento de herança significa que a classe derivada herdará os
atributos e métodos da classe base.
III. Uma interface é uma classe totalmente abstrata, ou seja, uma classe que
não pode ser instanciada.
IV. A principal regra prática do encapsulamento é marcar os atributos como
públicos e os métodos como privados.
Estão corretas as afirmações:
Escolha uma:
a. somente II e IV.

b. somente I e II.

c. somente III e IV.

d. somente I e III.

e. somente II e III.
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:
Escolha uma:
a. I e II.

b. II e IV.

c. III e IV.

d. II e III .

e. I e III.
SUGEP, 2016 – UFRPE
Considere as afirmações abaixo, sobre os paradigmas de linguagens de
programação.
1) As linguagens de programação Python, Ruby, C#, Cython e Lua são
multiparadigmáticas e podem ser classificadas, pelo menos, nos paradigmas
Orientado a Objetos, Funcional e Imperativo.
2) As linguagens de programação Object-Pascal (Delphi), Python, C++ e Java,
embora deem suporte à Orientação a Objetos (OO), não são completamente
orientadas a objetos.
3) As linguagens de programação Smalltalk e Ruby são completamente
orientadas a objetos, uma vez que todo valor de dados é um objeto e todas as
operações são vias chamadas de métodos.
Está(ão) correta(s):
Escolha uma:
a. 1 e 2, apenas.

b. 1 e 3, apenas.

c. 1, 2 e 3.

d. 3, apenas.
e. 2 e 3, apenas.
Fundação Carlos Chagas, 2012 – TRT - 11ª Região (AM)
No contexto de Programação Orientada a Objetos (OOP), sobre a relação de
agregação e composição, ou relação todo-parte, considere:
I. A relação de agregação expressa o ato ou resultado de formar um objeto
usando outros objetos como seus componentes.
II. Na relação de agregação, as partes só existem enquanto o todo existir.
III. Na relação de composição, as partes são independentes da existência do
todo.
Está correto o que se afirma em:
Escolha uma:
a. III, apenas.

b. I, II e III.

c. II e III, apenas.

d. II, apenas.

e. I, apenas.
Cronologicamente, existem autores que classificam as Linguagens de
Programação em gerações, porém de forma não consensual. Ainda assim, é
possível identificar momentos das linguagens pelas suas características.
Considerando as seguintes Linguagens de Programação:
1. Fortran e Lisp
2. Cobol e Basic
3. Pascal
4. C++
5. Java e C#
Relacione-as com suas principais características:
( ) Seus programas utilizam máquina virtual para executar
( ) Realização de cálculos
( ) Principal precursora das linguagens orientadas a objetos.
( ) Manipulação de dados
( ) Ensino da programação estruturada
Escolha uma:
a. 1, 3, 5, 2, 4.

b. 5, 4, 3, 2, 1.

c. 5, 1, 4, 2, 3.
d. 5, 3, 4, 1, 2.

e. 1, 2, 3, 4, 5.

Fundação Carlos Chagas, 2011 – TCE-PR


Em relação à Programação Orientada a Objetos, é INCORRETO afirmar:
Escolha uma:
a. Uma agregação representa um todo que é composto de várias partes e constitui
um relacionamento de contenção; se qualquer uma das partes for destruída, as
demais partes também o serão.

b. Polimorfismo pode ser entendido como um conceito complementar ao de herança.


Assim, no polimorfismo é possível enviar a mesma mensagem a diferentes objetos e cada
objeto responder da maneira mais apropriada para sua classe.

c. A aplicação do polimorfismo utilizando interfaces requer que o método polimórfico seja


definido na classe ancestral como abstract para possibilitar sua redefinição nas classes
descendentes.

d. No contexto da herança, uma instância da subclasse é, também, uma instância da


superclasse.

e. Interfaces são como as classes abstratas, mas nelas não é possível implementar
nenhum método, apenas declarar suas assinaturas; uma classe ao implementar uma
interface deverá escrever todos os seus métodos.

Para criação de um programa em qualquer linguagem de programação, é


necessário digitar o código fonte em um arquivo de texto, que será traduzido
pelo compilador para geração do código executável. A maneira mais fácil de se
fazer isso nas linguagens atuais é através de uma IDE. Sobre IDE, assinale (V)
para as afirmativas verdadeiras e (F) para as afirmativas falsas:
( ) é um ambiente de desenvolvimento integrado.
( ) oferece, dentre outras facilidades, um editor de texto para o código fonte.
( ) oferece, dentre outras facilidades, compilador para uma ou mais linguagens.
( ) o Microsoft Visual Studio é uma IDE.
Escolha uma:
a. F, F, F, F.

b. V, V, F, F.

c. V, V, V, F.

d. F, F, V, V.

e. V, V, V, V.
Existem diversas linguagens comerciais que permitem a programação
orientada a objetos. O C++, o C# e o Java são exemplos dessas linguagens.
Neste tipo de programação é importante restringir a visibilidade de alguns
atributos para garantir:
Escolha uma:
a. o polimorfismo.

b. a classe.

c. a herança.

d. o encapsulamento.

e. a instanciação.
A palavra computador remete diretamente ao ato de computar, calcular, e os
computadores são uma evolução das máquinas de calcular. Até a década de
1940, a programação dos computadores digitais acontecia...
Escolha uma:
a. através de rodas dentadas.

b. através de linguagens de programação.

c. através dos cartões perfurados.

d. através de fluxogramas.

e. através da combinação de chaves de liga-desliga.


Na programação Orientada a Objetos:
Escolha uma:
a. a união de todos os objetos de uma classe forma seu método construtor.

b. as Classes definem os serviços que podem ser solicitados a um construtor.

c. as Classes são tipos de objetos que descrevem as informações armazenadas e os


serviços providos por um objeto.

d. as Classes definem o comportamento dinâmico de uma instância.

e. o diagrama de classes reflete o comportamento dinâmico do programa.


O paradigma estruturado foi, durante muito tempo, utilizado para a criação dos
sistemas comerciais. Mas, à medida que a indústria de software foi crescendo,
ele foi dando espaço ao paradigma orientado a objetos. Sobre este paradigma,
assinale (V) para as afirmativas verdadeiras e (F) para as afirmativas falsas:
( ) um objeto pode existir mesmo que não exista nenhum evento a ele
associado.
( ) os conceitos de generalização e especialização da orientação a objetos
estão diretamente associados ao conceito de herança.
( ) um construtor é executado automaticamente sempre que um novo objeto é
criado.
( ) polimorfismo é o princípio pelo qual duas ou mais classes derivadas de uma
mesma superclasse podem invocar métodos que têm a mesma assinatura e
mesmo comportamento.
( ) uma classe define o comportamento dos objetos através de seus métodos, e
quais estados ele é capaz de manter através de seus atributos.
Escolha uma:
a. V, V, V, V, V.

b. V, V, F, F, V.

c. F, F, F, V, V.

d. V, V, V, F, V.

e. F, F, V, V, V.
ESAF, 2006 – CGU
Analise as seguintes afirmações relacionadas aos conceitos básicos
relacionados a programação e Linguagens de Programação Orientadas a
Objetos.
I. Na Programação Orientada a Objetos o overflow em operações aritméticas e
a divisão por zero não podem ser tratados como exceções.
II. Uma vez que uma exceção é disparada o controle não pode retornar
diretamente ao ponto de disparo.
III. Uma exceção termina o bloco no qual ela ocorreu.
IV. O tratamento de exceções é utilizado para tratar erros de sintaxe, isto é,
erros que acontecem como resultado da compilação de um programa.
Indique a opção que contenha todas as afirmações verdadeiras.
Escolha uma:
a. III e IV.

b. I e III.

c. II e IV.

d. I e II.

e. II e III.
Fundação Carlos Chagas, 2011 – TER-AP
Analise as seguintes definições:
I. Objeto que existe depois que o processo ou o thread que o criou deixa de
existir.
II. Mecanismo pelo qual elementos mais específicos incorporam a estrutura e o
comportamento de elementos mais gerais.
III. Lista de valores nomeados, utilizada como faixa de um determinado tipo de
atributo.
Correspondem, respectivamente, às definições I, II e III:
Escolha uma:
a. objeto ativo, polimorfismo e multiplicidade.

b. objeto persistente, herança e enumeração.

c. objeto transiente, polimorfismo e multiplicidade.

d. objeto ativo, mensagem e enumeração.

e. objeto transiente, método e cardinalidade.


CESPE, 2010 – INMETRO
A respeito das características dos paradigmas e das linguagens de
programação, assinale a opção correta.
Escolha uma:
a. As linguagens imperativas, como o Pascal, são voltadas para a especificação da
solução do problema, por meio do detalhamento do algoritmo e da especificação da
ordem das instruções.

b. No paradigma lógico, que é suportado por linguagens de programação não imperativas,


como o Lisp, os programas gerados são embasados em funções matemáticas.

c. O paradigma de programação orientado a objetos reúne linguagens, como o C++, que


são declarativas, isto é, o foco está na especificação dos resultados desejados ao invés
dos procedimentos para produzi-los.

d. As linguagens do paradigma de programação funcional, como o Prolog, não


apresentam grandes restrições ao uso de estruturas de controle (goto), o que pode reduzir
a legibilidade dos programas construídos sem limitações.

e. As linguagens procedimentais que dominaram o mercado antes da programação


estruturada, tal como o COBOL, caracterizaram-se por utilizar amplamente os tipos
abstratos de dados.
Um dos recursos utilizados na programação orientada a objetos para proteger
os dados das classes é o encapsulamento. A respeito de encapsulamento:
I. Pode ser entendido como sendo um conjunto de instâncias criadas a partir de
um outro conjunto de instâncias com características semelhantes.
II. É a base desse paradigma de programação e é correto afirmar que um dado
está encapsulado quando envolvido por código de forma que só é visível na
rotina onde foi criado; o mesmo acontece com uma rotina, que sendo
encapsulada, suas operações internas são invisíveis às outras rotinas.
III. É a habilidade de modelar características do mundo real do problema que o
programador esteja tentando resolver.
IV. Possibilita a criação de uma classe derivada, de modo que essa classe
herda todas as características da classe base.
Estão corretas as afirmações:
Escolha uma:
a. somente II, III e IV.

b. somente I e II.

c. somente III.

d. somente II.

e. somente I.
Com o passar dos anos, a programação estruturada foi sendo deixada de lado
e a programação orientada a objetos foi ganhando seu espaço no
desenvolvimento de sistemas. Esta última foca no contexto e na abstração.
Sobre o paradigma orientado a objetos:
I. Classes são apenas agrupamentos de métodos.
II. Objetos são instâncias de classes.
III. Herança é uma relação entre objetos.
IV. Herança é uma relação entre classes.
V. Mensagens são formas de executar métodos.
Estão corretas APENAS as afirmações.
Escolha uma:
a. II, IV e V.

b. III, IV e VI.

c. I, III e VI.

d. I, III e IV.

e. II, III e V.