Prévia do material em texto
1. Pergunta 1
[UERJ-2015-Analista de Sistemas – Desenvolvimento-ADAPTADA] Em programas orientados a objetos, é necessário que a associação de uma solicitação a um objeto e a uma de suas operações seja realizada somente em tempo de execução. Esse fenômeno, conhecido como ligação dinâmica, é importante porque permite a implementação do seguinte conceito de:
Ocultar opções de resposta 
1. Composição.
Acoplamento.
2. Encapsulamento.
3. Polimorfismo.Resposta correta
4. Herança.
2. Pergunta 2
Existem vários tipos de erros. Erros que paralisam o processamento de alguma parte do seu sistema – o que pode trazer muitos problemas, principalmente em programas com milhares de linhas. E, muitas vezes, os erros estão fora de alcance de um programador – quando ele é resultado de uma página na Web que saiu do ar, por exemplo. Complete a lacuna do texto: “Para evitar que isso aconteça, é possível antecipar esses problemas, entendendo o tratamento, motivação e suporte às __________ , bem como as melhores formas de lançar e relançar esses tipos de erros no código.”.
Ocultar opções de resposta 
1. heranças
2. exceções Resposta correta
3. interfaces
4. abstrações
5. reutilizações
3. Pergunta 3
Em um sistema para ensino de geometria implantado em uma escola, foram modeladas algumas figuras geométricas. Considere o trecho do programa (JAVA) abaixo. Considere a existência das duas classes no mesmo pacote. A classe Elipse é herdeira da classe Figura, com isso podemos usar essas classes no programa de teste (ProgTeste). Responda com a linha que está faltando para exibir o valor Y da elipse no console de texto.
public class Figura {
               private double x , y ;                       
public Figura ( double x , double y ) {
                              this.x = x ;          this.y = y ;
               } 
public double getX ( ) {
return x ;
} 
public double getY ( ) {
return y ;
} 
. . . 
}
public class Elipse extends Figura {
               private double rx , ry ; 
               public Elipse ( double x , double y , double rx , double ry ) {
                              super ( x , y ) ;
                              this.setRx ( rx ) ;
                              this.setRy ( ry ) ;
               }
. . .
}
public class ProgTeste {
  public static void main(String[] args) {
        Elipse a = new Elipse ( 300, 200, 30, 40 );
        Figure b = new Figura ( 320 , 240 );
           // Linha faltando
   }
}
Ocultar opções de resposta 
1. System.out.println( a.getY( ) ); Resposta correta
2. System.out.println( a.y );
3. System.out.println( a.this.y ); 
4. System.out.println( y );
5. System.out.println( b.getY() );
4. Pergunta 4
Em Java, podemos criar interfaces para depois implementar. Classes que desejam implementar uma interface utilizam a palavra reservada:
Ocultar opções de resposta 
1. super
2. interface
3. implementsResposta correta
4. extends
5. protected
5. Pergunta 5
Dentre as características da programação orientada a objetos, temos o conceito de classes e objetos. Dentre os vários conceitos usados em orientação a objetos, qual das alternativas abaixo pode ser o conceito de objeto?
Ocultar opções de resposta 
1. É um molde para criar outros objetos.
2. Objeto é uma forma de descrever o modelo de uma função
3. Objetos são usados para definir o objetivo do software.
4. Objeto serve para criar classes.
5. Objetos são instâncias de classe, um exemplar de uma classe.Resposta correta
6. Pergunta 6
Considerando a hierarquia de classe, temos que: uma vez que subclasses podem ser superclasses de novas classes, podemos definir uma hierarquia de classes em nossos programas. Sobre herança, marque a alternativa correta.
Ocultar opções de resposta 
1. Em Java, uma classe pode herdar diretamente de várias classes.
2. A hierarquia de classes em Java se inicia com a classe Object, definida em java.lang.Resposta correta
3. Em Java, temos herança múltipla.
4. Em Java, podemos usar herança de até duas classes diretamente. Como por exemplo: public class A extends B , C { ...}.
5. O mecanismo de herança dificulta a reutilização de código.
7. Pergunta 7
Em JAVA as exceções são tratadas com uma família de classes cujo objetivo é modelar os tipos de erro que podem ocorrer durante a execução de um programa. Qual tipo de exceção deveria ser tratado no erro do código abaixo? 
public class Tela {
 private int largura, altura;
 public Tela(int largura, int altura) {
  this.largura = largura;
  this.altura = altura;
 }
 public double mp(){
  return ( largura * altura / 1000000 );
 }
}
public class TestePOO {
 public static void main(String[] args) {
    Tela t;
    System.out.println( t.mp() );
 }
}
Ocultar opções de resposta 
1. InterfaceException
2. WatchException
3. ImportException
4. ArrayIndexOutOfBoundsException
5. NullPointerExceptionResposta correta
8. Pergunta 8
No Java, classes de exceção podem ser divididas em duas principais categorias: Exceções verificadas e Exceções não verificadas. Com relação as Exceções verificadas, analise as afirmações e marque a alternativa correta. 
I.As exceções verificadas são criadas prevendo que determinada ação possa falhar; 
II.Quando o sistema precisa gravar um disco, é preciso tratar uma exceção caso ele esteja cheio, esse é um exemplo de exceções verificadas;
III.Exceções verificadas são usadas quando se prevê que a execução do sistema será interrompida, ou seja, em momentos em que a exceção não será capturada, o chamador de método não fará nada e deixará o programa falhar.
Ocultar opções de resposta 
1. Apenas a afirmativa I está correta.
2. Apenas as afirmativas I e II estão corretas.Resposta correta
3. Apenas as afirmativas I e III estão corretas.
4. Apenas as afirmativas II e III estão corretas.
5. Todas as afirmativas estão corretas.
9. Pergunta 9
Ao criar um programa na linguagem Java, existe a possibilidade de alguns erros acontecerem. Esses erros são conhecidos como exceções (porque não devem ocorrer frequentemente). Eles podem ser ligados à lógica ou ao acesso a dispositivos ou arquivos externos ao sistema. Analise as afirmativas que descrevem ações para acontecer uma exceção:
I. O comando tenta consultar um banco de dados indisponível.
II. O programa tenta abrir um programa que não existe ou está indisponível.
III. O programa tem uma instrução no seu código fonte escrita de forma errada.
Pode-se afirmar que:
Ocultar opções de resposta 
1. Todas as afirmativas estão corretas.
2. Apenas as afirmativas I e III estão corretas.
3. Apenas as afirmativas II e III estão corretas.
4. Apenas as afirmativas I e II estão corretas.Resposta correta
5. Apenas a afirmativa I está correta.
10. Pergunta 10
Em um sistema de controle de estoque, precisamos representar os produtos. Considere a classe para representar um produto qualquer definida a seguir. Responda com a linha que está faltando para a declaração de um método que retorne o preço do produto.
public class Produto {
 private String nome 
 private double preco;
 public Produto(String n, double p){
  this.nome = n;
  this.preco = p;
 }
 // Linha faltando
 public double getPreco() {
 return preco;
 }    
 //...
}
Ocultar opções de resposta 
1. public void getPreco() {
2. public String getPreco() {
3. public int getPreco() {
4. public double getPreco() {Resposta correta
5. public getPreco() {