Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESPE / CEBRASPE
Orgão: CENSIPAM
1 public class CntrPersistencia implements IPersistencia {
2 private Connection conexao;
3 private CntrConexao cntrConexao;
4 private String driver;
5
6 public void executar (CmdBancoDados comando)
7 throws EPersistencia {
8 try {
9 if (conexao == null)
10 conexao = cntrConexao.getConexao();
11 }
12 catch (SQLException exp) {
13 throw new EPersistencia();
14 }
15 comando.executar(conexao);
16 }
17
19 public void encerrar() throws EPersistencia {
19 try {
20 conexao.close();
21 }
22 catch (SQLException exp){
23 throw new EPersistencia("Erro.");
24 }
25 }
26
27 private void carregarDriver() throws EPersistencia {
28 try {
29 Class.forName(driver);
30 }
31 catch(ClassNotFoundException exp){
32 throw new EPersistencia("Erro");
33 }
34 }
35
36 public void setDriver(String driver) throws EPersistencia {
37 this.driver = driver;
38 carregarDriver();
39 }
40 }
Julgue o item seguinte, acerca do código acima em Java.
No código da classe “CntrPersistencia”, “setDriver” não trata EPersistencia”, se essa exceção for lançada por “carregarDriver”, o tratamento é responsabilidade do código que invocar “setDriver”; a classe implementa “IPersistencia” e essa interface deve listar todos os métodos da classe; quando “setDriver” invoca “carregarDriver”, há um erro, pois o método é privado.