Buscar

PROGRAMACAO ORIENTADA A OBJETO 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

GABARITO
Protocolo: 548629
Página 1 - 23/06/2019 às 08:11
Substitutiva
Data de aplicação: 14/06/2019
Curso: Tecnologia em Análise e Desenvolvimento de Sistemas
Disciplina: Programação Orientada à Objeto
Ano: 20191 / Semestre: 2
RGM: 343.4903 / Aluno: ERISLENE LINHARES DOS SANTOS SALDANHA
PROVA 01
Questão 1
Houve um tempo em que a programação era bem mais complexa que hoje, época em que os programas eram
construídos, usava-se instruções de baixo nível e desvio como “ADD AX,5” e “JMP Error”. Essas técnicas de
programação não demoraram muito para serem modificadas. Imediatamente os programadores receberam de
braços abertos a revolução que começou nos anos 60 e criou um novo conceito de programação:
 
 
Qual é esse novo conceito de programação que o texto anterior se refere?
Resposta do aluno: Programação Extruturada
Questão 2
Defina oque é um objeto, na Programação Orientada a Objetos e como eles podem ser divididos?
Resposta do aluno:
Parecer do professor: Sem resposta.
Questão 3
A respeito do construtor default (padrão) de uma classe em C++, pode-se afirmar que:
a) toda classe em C++ tem um construtor default;
b) a classe tem de ter pelo menos um construtor definido para ter um construtor default;
c) uma classe tem um construtor default se ela não define nenhum outro construtor; (correta)
d) toda classe em C++ herda um construtor default da classe Object;
e) a linguagem C++ não tem o conceito de um construtor default;
Questão 4
Qual é a diferença entre private e protected?
 
a) membros privados não podem ser acessados pelas subclasses, mas os membros protected podem. (correta)
b) membros private e membros protected na superclasse podem ambos ser acessados pelas subclasses.
c) membros protected de uma classe podem ser acessados por instâncias de objetos desta classe.
d) membros protected não podem ser acessados pelas subclasses, mas os membros privados podem.
Questão 5
Qual das seguintes afirmações é verdadeira na POO?
a) Se não for especificado um construtor para a classe, um construtor padrão é utilizado; (correta)
b) Um objeto pode ser uma classe;
GABARITO
Protocolo: 548629
Página 2 - 23/06/2019 às 08:11
c) Uma classe deve ter pelo menos um método;
d) Uma classe pode ser um objeto.
Questão 6
Observe o a declaração da classe logo abaixo.
class Pessoa() -> Linha 01
{-> Linha 02
 protected: -> Linha 03
 nome :String; -> Linha 04
 documento :Float; -> Linha 05
};-> Linha 06
 
 
Assinale a alternativa onde as linhas apresentam erros em sua declaração.
a) Linhas 01, 02, 03;
b) Linhas 04, 05, 06;
c) Linhas 03 e 06;
d) Linhas 01 e 06;
e) Linhas 03 e 04; (correta)
Questão 7
Em meados da década de 60, com a intenção de ganhar tempo de programação e uma melhoria satisfatória da
qualidade dos sistemas surgiram ideias inovadoras no que diz programação. No início, não se tinha uma linha a
se seguir, apenas se programava. No entanto, logo surgiu uma melhor forma de se programar.
 
Qual forma de programação que surgiu na época caracterizada pelo texto acima:
a) Programação estruturada. (correta)
b) Programação Orientada a Objetos.
c) Programação através de linhas de comando.
d) Programação com o uso de saltos.
Questão 8
Assinale a alternativa correta.
 
 
O operador ponto é utilizado para:
a) Atribuir uma valor ao objeto;
b) Acrescentar novos comportamentos ao objeto;
c) Criar um novo objeto;
d) Acessar atributos e métodos públicos de um objeto. (correta)
Questão 9
De acordo com a evolução da maneira de programar, assinale a alternativa do código que corresponda com a
época adequada:
 
Data: 1970 a 1980.
a) Saltos, gotos.
b) If-then-else. (correta)
c) Mensagens, Métodos.
GABARITO
Protocolo: 548629
Página 3 - 23/06/2019 às 08:11
d) Código mistos.
Questão 10
Assinale a alternativa correta, em que as afirmativas são verdadeiras e falsa na devida ordem.
Uma estrutura é uma coleção de um ou mais tipos de elementos denominados membros e cada um pode ser
um tipo de dado diferente.
Já que uma estrutura ou structor pode não ser declarada usando vários tipos de variáveis, podemos dizer que
estamos criando uma variável com um tipo padrão criada por nós.
Esses elementos terão somente um tipo de dado, ou seja, podendo somente declarar um tipo de variável,
assim, um array pode ser do tipo integer, string.
 
Os arrays são adequados, quando, a solução é utilizar-se de um tipo de dado estrutura.
a) VFVF (correta)
b) VVVV
c) FFFF
d) FVFV
PROVA 02
Questão 1
Declare uma classe e uma classe derivada da mesma:
Resposta do aluno:
Parecer do professor: Sem resposta.
Questão 2
Explique como é o funcionamento de construtores e destrutores de classes derivadas:
Resposta do aluno:
Parecer do professor: Sem resposta.
Questão 3
Para Arnault (2013), a aplicação de alterações por meio de herança nos leva a um dos pontos centrais da POO.
Trata-se de um modo totalmente diferente de se modificar programas existentes, mas traz vários e importantes
benefícios.
 
Assinale a alternativa correta:
a) suponha que você está usando uma classe desenvolvida por terceiros, e que você tenha o código fonte. Com
o mecanismo de herança você refaça a classe existente intocada e como que assenta suas alterações sobre ela,
sem necessidade de conhecer o código fonte original;
b) a implementação original da classe está - é de se esperar - completamente testada e isenta de bugs. Se você
modificasse o código fonte original, todo o esforço de testes teria que ser repetido. Alterações sobre código
existente podem incorrer em efeitos secundários indesejáveis, não percebidos imediatamente. Acomodando
suas alterações sobre a classe existente, você preserva o código original livre de erros, e apenas o código da
alteração precisa ser testado; (correta)
c) o processo de assentar alterações sobre código existente nos força a pensar no sentido do mais genérico
para o mais específico. Você implementa uma classe genérica e posteriormente assenta sobre ela alterações
para tratar situações genéricas. Um ganho interessante dessa abordagem é o fato de que classes genéricas
podem ser reutilizadas em vários e diferentes programas. Cada novo programa assenta alterações sobre a
classe original, mas esta permanece a mesma em todos os programas onde for utiliza
GABARITO
Protocolo: 548629
Página 4 - 23/06/2019 às 08:11
d) se a classe base for otimizada, todas as classes construídas sobre ela não recebem os benefícios dessa
otimização, sem qualquer modificação nos programas. Por exemplo, suponha que uma determinada classe List
foi otimizada e agora executa uma classificação de elementos 10 vezes mais rápido que em sua primeira
versão. Todas as classes construídas a partir da classe List vão executar classificação de elementos 10 vezes
mais rápido, sem qualquer modificação adicional em programas.
Questão 4
Para Arnault (2013), a aplicação de alterações por meio de herança nos leva a um dos pontos centrais da POO.
Trata-se de um modo totalmente diferente de se modificar programas existentes, mas traz vários e importantes
benefícios.
 
Assinale a alternativa correta:
a) suponha que você está usando uma classe desenvolvida por terceiros, e que você não tem o código fonte.
Com o mecanismo de herança você deixa a classe existente intocada e como que assenta suas alterações sobre
ela, sem necessidade de conhecer o código fonte original; (correta)
b) a implementação original da classe está - é de se esperar - completamente testada e repleta de bugs. Se
você não modificasse o código fonte original, todo o esforço de testes teria que ser repetido. Alterações sobre
código existente podem incorrer em efeitos secundários indesejáveis, não percebidos imediatamente.
Acomodando suas alterações sobre a classe existente, você preserva o código original livre de erros, e apenas o
código da alteração precisa ser testado;
c) o processo de assentar alterações sobre código existente nos evita de pensar no sentido do menos genérico
para o mais específico. Você implementa uma classe genérica e posteriormente assenta sobre ela alteraçõespara tratar situações específicas. Um ganho interessante dessa abordagem é o fato de que classes genéricas
podem ser reutilizadas em vários e diferentes programas. Cada novo programa assenta alterações sobre a
classe original, mas esta permanece a mesma em todos os programas onde for uti
d) se a classe base for otimizada, todas as classes construídas sobre ela recebem os benefícios dessa
otimização, com muitas modificações nos programas. Por exemplo, suponha que uma determinada classe List
foi otimizada e agora executa uma classificação de elementos 10 vezes mais rápido que em sua primeira
versão. Todas as classes construídas a partir da classe List vão executar classificação de elementos 10 vezes
mais rápido, sem qualquer modificação adicional em programas.
Questão 5
O conceito de classes derivadas está presente em:
a) encapsulamento;
b) herança; (correta)
c) ocultação de dados;
d) tipos abstratos de dados.
Questão 6
Para Arnault (2013), a aplicação de alterações por meio de herança nos leva a um dos pontos centrais da POO.
Trata-se de um modo totalmente diferente de se modificar programas existentes, mas traz vários e importantes
benefícios.
 
Assinale a alternativa correta:
a) suponha que você está usando uma classe desenvolvida por terceiros, e que você não tem o código fonte.
Com o mecanismo de polimorfismo você deixa a classe existente intocada e como que assenta suas alterações
sobre ela, sem necessidade de conhecer o código fonte original;
b) a implementação original da classe está - é de se esperar - completamente testada e com bugs. Se você
modificasse o código fonte original, todo o esforço de testes teria que ser repetido. Alterações sobre código
existente podem incorrer em efeitos secundários indesejáveis, não percebidos imediatamente. Acomodando
GABARITO
Protocolo: 548629
Página 5 - 23/06/2019 às 08:11
suas alterações sobre a classe existente, você preserva o código original livre de erros, e apenas o código da
alteração precisa ser testado;
c) o processo de assentar alterações sobre código existente nos força a pensar no sentido do mais específico.
Você implementa uma classe genérica e posteriormente assenta sobre ela alterações para tratar situações
específicas. Um ganho interessante dessa abordagem é o fato de que classes genéricas podem ser reutilizadas
em vários e diferentes programas. Cada novo programa assenta alterações sobre a classe original, mas esta
permanece a mesma em todos os programas onde for utilizada;
d) se a classe base for otimizada, todas as classes construídas sobre ela recebem os benefícios dessa
otimização, sem qualquer modificação nos programas. Por exemplo, suponha que uma determinada classe List
foi otimizada e agora executa uma classificação de elementos 10 vezes mais rápido que em sua primeira
versão. Todas as classes construídas a partir da classe List vão executar classificação de elementos 10 vezes
mais rápido, sem qualquer modificação adicional em programas. (correta)
Questão 7
Quanto à sobrecarga de operadores assinale a alternativa incorreta:
a) significa utilizar nome diferente para tarefas diferentes. (correta)
b) uma implementação de sobrecarga de operadores é definida por meio de funções chamadas de operadores.
c) permite que nós implementemos uma nova maneira de um operador funcionar.
d) é necessário respeitar a definição original do operador.
Questão 8
Para Arnault (2013), a aplicação de alterações por meio de herança nos leva a um dos pontos centrais da POO.
Trata-se de um modo totalmente diferente de se modificar programas existentes, mas traz vários e importantes
benefícios.
 
Assinale a alternativa correta:
a) suponha que você está usando uma classe desenvolvida por terceiros, e que você não tem o código fonte.
Com o mecanismo de herança você deixa a classe existente intocada e como que assenta suas alterações sobre
ela, tem a necessidade de conhecer o código fonte original;
b) a implementação original da classe está - é de se esperar - completamente testada e isenta de bugs. Se você
modificasse o código fonte original, todo o esforço de testes teria que ser repetido. A não alteração sobre código
existente, pode incorrer em efeitos secundários indesejáveis, não percebidos imediatamente. Acomodando suas
alterações sobre a classe existente, você preserva o código original livre de erros, e apenas o código da
alteração precisa ser testado;
c) o processo de assentar alterações sobre código existente nos força a pensar no sentido do mais genérico
para o mais específico. Você implementa uma classe genérica e posteriormente assenta sobre ela alterações
para tratar situações específicas. Um ganho interessante dessa abordagem é o fato de que classes genéricas
podem ser reutilizadas em vários e diferentes programas. Cada novo programa assenta alterações sobre a
classe original, mas esta permanece a mesma em todos os programas. (correta)
d) se a classe base for otimizada, apenas uma classe construíra sobre ela recebem os benefícios dessa
otimização, sem qualquer modificação nos programas. Por exemplo, suponha que uma determinada classe List
foi modificada e agora executa uma classificação de elementos 10 vezes mais rápido que em sua primeira
versão. Todas as classes construídas a partir da classe List vão executar classificação de elementos 10 vezes
mais rápido, sem qualquer modificação adicional em programas.
Questão 9
Sobre a sobrecarga de função templates, assinale a alternativa correta.
a) I - essas funções têm que receber um número de parâmetros iguais, ou seja, você está sobrecarregando a
função template.
b) II – essas funções têm que receber um número de parâmetros diferentes, ou seja, você está sobrecarregando
GABARITO
Protocolo: 548629
Página 6 - 23/06/2019 às 08:11
a função template.
c) III - se o número de parâmetros for exatamente o mesmo para as duas funções, o compilador acusará uma
ambiguidade.
d) IV - se o número de parâmetros forem diferentes para as duas funções, o compilador acusará uma
ambiguidade. (correta)
Questão 10
Observe o a declaração da classe logo abaixo.
 
class Pessoa() -> Linha 01
{-> Linha 02
 protected: -> Linha 03
 nome :String; -> Linha 04
 documento :Float; -> Linha 05
};-> Linha 06
Assinale a alternativa onde as linhas apresentam erros em sua declaração.
 
 
a) Linhas 01, 02, 03;
b) Linhas 04, 05, 06;
c) Linhas 03 e 06;
d) Linhas 01 e 06;
e) Linhas 04 e 05; (correta)

Mais conteúdos dessa disciplina