Buscar

A3 - PROGRAMAÇÃO ORIENTADA A OBJETOS

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 5 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

Prévia do material em texto

ATIVIDADE 3 – PROGRAMAÇÃO ORIENTADA A OBJETOS - UAM 
 
1 - “As classes em Programação orientada a objetos (POO) são definições dos 
elementos que formam um sistema, neste caso, definições dos objetos que vão intervir 
em nossos programas. Um objeto se define indicando que propriedades e 
funcionalidades têm. Justamente essas declarações são o que é uma classe. Quando 
se faz uma classe simplesmente se especifica que propriedades e funcionalidades 
têm.” (ZENZELUK, J. H.; RIBEIRO, S. Um estudo para a evolução do PHP com a 
linguagem Orientada a objetos. Revista Científica Semana Acadêmica, Fortaleza, v. 
3, n. 1, 2014.). 
Quando se programa em orientação a objetos é fundamental ter domínio sobre os 
conceitos fundamentais, como classe e as suas nomenclaturas quando se trata de 
herança. Neste sentido, quais as afirmativas abaixo são falsas ou verdadeiras com 
relação à hierarquia entre as classes? 
 
I. ( ) Superclasse é a classe que recebe as heranças. 
II. ( ) Classes filhas podem remover atributos e métodos da sua classe mãe. 
III. ( )Ancestral é a classe que aparece na hierarquia na posição acima da classe mãe. 
IV. ( ) Descendente é toda classe que aparecer abaixo da classe mãe. 
 
É correto o que se afirma em: 
 
 .F, F, V, V. 
 .F, V, F, V. 
 .V, V, V, F. 
 .V, F, V, F. 
 .V, V, F, F. 
 
Resposta correta. Segundo os fundamentos de hierarquia em orientação a objeto, a 
superclasse, que é a classe mãe, gera as classes filhas que herdam os atributos e 
métodos, sendo que as classes filhas não podem remover os atributos e métodos 
herdados. 
 
2 - “A palavra reservada class informa que estamos criando uma Classe. O papel da 
classe é reunir as características e comportamentos comuns dos objetos. Na 
programação utilizamos o mesmo conceito. A classe pode ter diversas funções que 
pesquisam em múltiplas tabelas, mas em comum dividem o mesmo propósito e pode 
acontecer também de trabalharem com as mesmas variáveis (ZENZELUK, J. H.; 
RIBEIRO, S. Um estudo para a evolução do PHP com a linguagem Orientada a 
objetos. Revista Científica Semana Acadêmica, Fortaleza, v. 3, n. 1, 2014.). 
No universo de orientação a objeto, existem diversos conceitos que são de 
fundamental importância. Neste sentido, o uso da anotação @Override 
não é obrigatório. Porém, se colocarmos o método com @Override, o que é 
necessário executar? 
 
 .Esse método, necessariamente, precisa reescrever um método existente na 
subclasse. 
 .Esse método, necessariamente, precisa reescrever um atributo existente na 
classe mãe. 
 .Esse método, necessariamente, precisa reescrever um método existente na classe 
mãe. 
 .Esse método, necessariamente, precisa reescrever um atributo existente na 
classe descendente. 
 .Esse método, necessariamente, precisa reescrever um método existente na classe 
filha. 
 
Resposta correta. Apesar de não ser obrigatório, quando se aplica a 
notação @Override, esse método necessariamente precisa reescrever um 
método existente na classe mãe. 
 
3 - “A linguagem Java apoia a herança simples, mas não a múltipla. Isso porque uma 
classe estende, no máximo, para outra classe. Todavia, uma classe potencialmente 
implementa muitas interfaces.”. (PAGE-JONES, M. Fundamentos do desenho 
orientado a objeto com UML. São Paulo: Makron Books, 2001. p. 50.) 
Podemos compreender a questão da herança na orientação a objeto. Neste sentido, 
temos agregados à herança os conceitos de sobrecarga e sobrescrita. Dentre as 
afirmativas abaixo, quais são verdadeiras e quais são falsas? 
I. ( ) Os métodos existentes na classe mãe talvez não se adéquem a todas as classes 
filhas. 
II. ( ) @override nas classes filhas realiza uma sobrescrita do método herdado. 
III. ( ) Na herança, os tipos de retorno podem ser modificados nas sobrescritas. 
IV.( ) Na herança, os tipos de retorno não podem ser modificados na sobrecarga. 
V. ( ) Sobrecarga cria métodos com o mesmo nome, mas cada método recebe 
parâmetros diferentes. 
Agora, assinale a alternativa que apresenta a sequência correta. 
 
 .F, V, V, F, V. 
 .V, V, F, F, V. 
 .V, F, F, F, V. 
 .F, V, F, F, V. 
 .V, V, V, F, F. 
 
Resposta correta. A opção III é falsa, pois na herança os tipos de retorno não podem 
ser modificados na sobrescrita. A opção IV é falsa, pois na herança, os tipos de 
retorno podem ser modificados na sobrecarga. Na opção I, os métodos realmente 
podem não se adequar a todas as classes subtipo, sendo que o override executa uma 
sobrescrita do método do qual foi herdado. 
 
4 - “Chamadas de método em Java são polimórficas. A mesma chamada de método 
pode, em momentos diferentes, invocar diferentes métodos, dependendo do tipo 
dinâmico da variável utilizada para fazer esta chamada. Uma variável polimórfica é 
uma que pode armazenar objetos de diferentes tipos (cada variável objeto em Java é 
potencialmente polimórfica).” (BARNES, D. J.; KOLLING, M. Programação orientada 
a objetos em Java. Editora Pearson Prentice Hall. São Paulo, 2004. p. 264). 
O polimorfismo na orientação a objetos pode assumir diferentes comportamentos. 
Como se apresenta o polimorfismo na forma de sobrecarga? 
 
 .Polimorfismo de sobrecarga permite que um atributo com o mesmo nome, possua 
comportamentos iguais. 
 .Polimorfismo de sobrecarga permite que um atributo com nome diferente, possua 
comportamentos diferentes. 
 .Polimorfismo de sobrecarga permite que um método com o mesmo nome, possua 
comportamentos iguais. 
 .Polimorfismo de sobrecarga permite que um método com o mesmo nome, possua 
comportamentos diferentes. 
 .Polimorfismo de sobrecarga permite que um método com nome diferente, possua 
comportamentos iguais. 
 
Resposta correta. É correto compreender que, nas notações de orientação a objeto, o 
polimorfismo de sobrecarga permite que um método com o mesmo nome, possuam 
comportamentos diferentes. Ou seja, tanto polimorfismo quanto herança são 
referências de reutilização de código, pois trabalham em conjunto. Existem dois tipos 
de polimorfismo que são conhecidos como sobrecarga e sobreposição. 
 
5 - “O software orientado a objeto é um software constituído de objetos e das classes 
para as quais eles pertencem. Um objeto é uma construção de software na qual 
operações (que são semelhantes a funções ou procedimentos) são organizados em 
torno de um conjunto de variáveis (que funcionam como dados).”. (PAGE-JONES, 
M. Fundamentos do desenho orientado a objeto com UML.. São Paulo: Makron 
Books, 2001. p. 50.) 
É fundamental compreender os fundamentos de orientação a objeto e construção das 
classes e as práticas utilizadas. É chamada de “boa prática” quando se executa uma 
ordem clara e coerente já adotada e aceita pelo mercado de desenvolvedores. Neste 
sentido, sendo considerada uma boa prática, a elaboração de uma classe compreende 
uma ordem das palavras-chave. Esta ordem é: 
 
 .Atributos da classe > Definição da classe > Construtores > Métodos. 
 .Definição da classe > Construtores > Atributos da classe > Métodos. 
 .Definição da classe > Métodos > Construtores > Atributos da classe. 
 .Construtores > Atributos da classe > Definição da classe > Métodos. 
 .Definição da classe > Atributos da classe > Construtores > Métodos. 
 
Resposta correta. Seguindo os princípios da boa prática, a ordem correta é a 
definição da classe, após a declaração dos atributos da classe, após a declaração 
dos construtores e por fim a declaração dos Métodos. 
 
6 - “Quando falamos em herança, a primeira imagem que nos aparece na memória é a 
de uma árvore genealógica com avós, pais, filhos e nas características que são 
transmitidas geração após geração. O que deve ser levado em consideração sobre 
herança em orientação a objetos é o compartilhamento de atributos e comportamentos 
entre as classes de uma mesma hierarquia (árvore).”. (ZENZELUK, J.H.; RIBEIRO, 
S.Um estudo para a evolução do PHP com a linguagem Orientada a objetos. Revista 
Científica Semana Acadêmica, Fortaleza, v. 1, n. 3, 2014.). 
Pelo enunciado, podemos compreender uma definiçãoabrangente de herança na 
orientação a objeto. Neste sentido, qual o conceito fundamental de herança na 
orientação a objeto? 
 
 .Herança é construir uma classe com seus atributos e métodos, chamada de 
classe filho, que permite que outras classes, chamada classe mãe, herdem todos 
os seus atributos e métodos. 
 .Herança é construir uma classe filha com atributos e métodos herdados da 
chamada de classe mãe, permitindo que as classes filhas herdem todos os seus 
atributos e métodos. 
 .Herança é construir uma classe com seus atributos, chamada de classe mãe, que 
permite que outras classes, chamadas classe filhos, herdem todos os seus 
atributos e métodos. 
 .Herança é construir uma classe com seus métodos, chamada de classe mãe, que 
permite que outras classes, chamadas classe filhos, herdem todos os seus 
atributos e métodos. 
 .Herança é construir uma classe com seus métodos, chamada de classe filho, que 
permite que outras classes, chamada classe mãe, herdem todos os seus atributos 
e métodos. 
 
Resposta correta. A herança é uma das principais características da orientação a 
objeto e consiste em uma classe filha herdar os atributos e métodos da classe mãe. 
 
7 - “Em geral, você pode fazer distinção entre os dois principais propósitos do uso da 
herança: podemos utilizá-la para herdar o código (herança de código) e podemos 
utilizá-la para herdar o tipo (subtipagem). O primeiro aspecto é útil para reutilização de 
código, o segundo para polimorfismo e especialização. Quando herdamos de 
(‘estendemos’) classes concretas, realizamos as duas coisas: herdamos a 
implementação e o tipo”. (BARNES, D. J.; KOLLING, M. Programação orientada a 
objetos em Java. Editora Pearson Prentice Hall. São Paulo, 2004. p. 276) 
É possível compreender a utilização de herança como uma forma de programação de 
nível mais elevado de abstração. Neste sentido, o que são heranças múltiplas? 
 
 
 .A classe que herda os atributos e métodos combinados das suas classes subtipo. 
 .A classe que herda os atributos e métodos combinados das suas classes 
descendentes. 
 .A classe que herda os atributos e métodos combinados das suas classes mãe. 
 .A classe que herda os atributos e métodos combinados das suas classes 
subclasse. 
 .A classe que herda os atributos e métodos combinados das suas classes filho. 
 
Resposta correta. Segundo os fundamentos de orientação a objeto, este método é 
utilizado quando uma classe filha herde mais de uma classe mãe, ou seja, ela herda 
os atributos e métodos combinados de todas as suas classes mãe. 
 
8 - “Classes servem de modelo para a criação dos objetos, é onde é definida toda a 
estrutura e comportamento de um objeto. Os objetos então são gerados a partir de 
classes. A identificação de um objeto ocorre segundo suas características(atributos) e 
comportamentos(métodos). Na modelagem de sistemas, um objeto é qualquer coisa 
existente no mundo real. Atributos é como são chamadas as características ou 
propriedades de um objeto. Estes identificam o estado de um objeto e representam 
uma abstração do tipo de dados do mesmo, e conforme aumenta o número de 
atributos, mais fácil é de identificar este objeto.”. (ZENZELUK, J. H.; RIBEIRO, S. Um 
estudo para a evolução do PHP com a linguagem Orientada a objetos. Revista 
Científica Semana Acadêmica, Fortaleza, v. 3, n. 1, 2014.). 
É fundamental conhecer os conceitos e definições de orientação a objeto, 
principalmente as palavras chave. Quais as definições abaixo compõem as definições 
das classes em orientação a objeto? 
I. Public. 
II. Procedure. 
III. Private. 
IV. Section. 
V. Class. 
É correto o que se afirma em: 
 
 .I, IV e V. 
 .II, IV e V. 
 .I, III e V. 
 .II, III e IV. 
 .I, II e V. 
 
Resposta correta. As palavras reservadas Private, Public e Class 
são utilizadas na construção de uma classe na orientação a objeto. 
 
9 - “No paradigma de orientação a objetos se prega o conceito da "abstração". Para 
construir um sistema orientado a objetos, não devemos projetar o sistema como sendo 
uma grande peça monolítica; devemos separá-lo em partes, concentrando-nos nas 
peças mais importantes e ignorando os detalhes, para podermos construir peças bem-
definidas que possam ser reaproveitadas mais tarde, formando uma estrutura 
hierárquica.”. (ZENZELUK, J. H.; RIBEIRO, S. Um estudo para a evolução do PHP 
com a linguagem Orientada a objetos. Revista Científica Semana Acadêmica, 
Fortaleza, v. 3, n. 1, 2014.). 
Podemos compreender a importância do conceito e aplicação do conceito de 
abstração na orientação a objeto, onde são criadas classes abstratas. Neste sentido, 
qual seria o oposto de uma classe abstrata? 
 
 .Classe ancestral. 
 .Classe concreta. 
 .Classe mãe. 
 .Classe filha. 
 .Classe descendente. 
 
Resposta correta. A classe abstrata seria o contrário da classe concreta. 
Uma classe abstrata serve como modelo para uma classe concreta, sendo 
que as classes concretas são utilizadas para gerar um determinado objeto 
 
10 - “A herança representa um caminho muito importante no qual a orientação a objeto 
diverge das abordagens dos sistemas convencionais. Ela efetivamente permite que 
você construa de forma incrementada tratando classes herdadas. Primeiro é 
necessário construir classe para lidar com o caso mais geral. Em seguida, a fim de 
tratar com os casos especiais, acrescentam-se classes mais especializadas - 
herdadas da primeira classe”. (PAGE-JONES, M. Fundamentos do desenho 
orientado a objeto com UML. São Paulo: Makron Books, 2001. p. 32.). 
Portanto, podemos compreender a importância dos diversos tipos de sistemas de 
informação e a sua relação no contexto organizacional. Como é possível as classes 
herdadas acessar as informações da classe mãe se ela é definida como private? 
 
 .Usando os métodos integer e double. 
 .Usando o método Override. 
 .Usando os métodos void e int. 
 .Usando os métodos get e set. 
 .Usando o método public. 
 
Resposta correta. Pelos fundamentos da linguagem Java, os métodos get e set 
permitem acessar as informações da classe mães, mesmo se ela estiver declarada 
como private.

Continue navegando