Programação com Objectos/Teste 1 de 2013/02/04

From Wiki**3

< Programação com Objectos

Parte 1

1.1. (3.0 val.) Transportadora

1.2. (1.0 val.) Stack

1.3. (1.5 val.) Qual a distinção entre sobrecarregar (overloading) e redefinir (overriding). Ilustre as diferenças através de um exemplo.

1.4. (1.5 val.) Dê um exemplo prático de polimorfismo. Quais são as vantagens e inconvenientes do polimorfismo?

Parte 2 (resposta múltipla)

2.1. Os objectos partilham duas características: estado e comportamento. Como é definido o estado?

  1. o estado é o identificador do objecto
  2. o estado corresponde ao que um objecto pode fazer
  3. o estado é representado pelos atributos
  4. o estado depende fundamentalmente do número de subclasses
  5. o estado pode ser consultado acedendo à classe Object (no caso do Java)

2.2. Que nome se dá ao processo de esconder informação respeitante a alguns objectos

  1. polimorfismo
  2. herança
  3. encapsulamento
  4. inclusão
  5. instanciação

2.3. Qual destas frases é uma possível definição de “objecto”?

  1. Um objecto é uma realização de uma classe
  2. Um objecto é uma template de uma classe
  3. Um objecto é uma instância de uma classe
  4. Um objecto pode estender uma classe
  5. Um objecto pode ser estendido por uma classe

2.4. Que característica das linguagens OO permite que objectos de diferentes tipos sejam tratados de forma indiferenciada?

  1. abstracção
  2. herança
  3. polimorfismo
  4. instanciação
  5. nenhum dos anteriores

2.5. Qual e o resultado da execução do seguinte programa em Java?

<java5> public class Hello {

 public static void main(String[] args) { 
   Integer a = new Integer(2);
   Integer b = new Integer(2);
   System.out.println(b == a);
 } 

} </java5>

  1. o programa lança de uma excepção
  2. o programa escreve true
  3. o programa escreve false
  4. o programa termina sem produzir erros/excepções e sem escrever nada
  5. nenhum dos anteriores