SóProvas


ID
762196
Banca
FCC
Órgão
TCE-AM
Ano
2012
Provas
Disciplina
Engenharia de Software
Assuntos

Sobre a orientação a objeto é correto afirmar:

Alternativas
Comentários
  • Polimorfismo é a habilidade pela qual uma única operação ou nome de atributo pode ser definido em mais de uma classe e assumir implementações diferentes em cada uma dessas;
     
    Tipos:

    1)Estático: sobrecarregados(overloading)
    -- nome igual / argumentos diferentes;
    --a decisão do método a ser chamado é tomada em tempo de compilação de acordo com os argumentos passados;
     
    2)Dinâmico: sobrescritos(overriding)
    -- associado ao conceito de herança;
    --nome e argumentos iguais;
    -- subclasse redefine método da superclasse;
    -- a decisão do método a ser chamado é tomada em tempo de execução.

    obs: na sobrecarga o nome do método é igual, mas há alguma diferença no tipo ou quantidade de atributos entre os métodos. Isso  vai definir qual método será chamado.
  • ·         Default ou package-private (privativo ao pacote): representado pelo símbolo ~ (til) e conhecido como package em UML. Não há palavra-chave associada em Java e é utilizado quando o modificador não é especificado. Ex.: o atributo CPF da classeUsuario;
    ·         private (privado): representado pelo símbolo  (menos). Ex.: o atributo nome;
    ·         protected (protegido): representado pelo símbolo # (cerquilha). Ex.: o atributo idade;
    ·         public (público): representado pelo símbolo + (mais). Ex.: o atributo RG.


    Leia mais em: Modelagem de Software com UML - Artigo easy Java Magazine 5 - Parte 2 http://www.devmedia.com.br/modelagem-de-software-com-uml-artigo-easy-java-magazine-5-parte-2/20461#ixzz2IBNNIypE
  • a)      Falso! Em relação ao reaproveitamento de atributos e métodos a questão esta correta, o que reduz a quantidade de linhas de código, tempo de desenvolvimento e facilita manutenções, já que tudo será reaproveitado.
    b)      Falso! As duas afirmações estão erradas. Na herança múltipla, uma subclasse é que deve herdar atributos e métodos de diversas superclasses. E nem todas linguagens OO suportam tal característica, Java é um exemplo. Para uma linguagem ser OO basta ela suportar: encapsulamento, polimorfismo e herança.
    c)      Verdadeiro! O primeiro trecho está correto, pois as subclasses herdam das superclasses no polimorfismo, permitindo o reaproveitamento. Porém, se um método existir na superclasse e na subclasse realmente eles serão distintos, porém sua obrigatoriedade não é absoluta na subclasse, ela pode simplesmente aproveitar o método da superclasse.
    d)      Falso! A representação das visibilidades são as seguintes: público (+), privado (-), protegido (#). Além disso, quando algo é protegido a classe detentora e todas outras do mesmo pacote poderão enxergá-la.
    e)      Falso! Em uma relação de herança as subclasses herdaram e compartilharam características da superclasse (classe geral). Porém, é certo que as subclasse possuíram diferenças.