O objetivo do código J2ME abaixo é construir uma aplicação que apresenta na tela uma lista com os nomes dos clientes e, a partir dessa lista, permitir que o usuário realize uma chamada para o número do cliente. Suponha ainda que GerenciarLista.carregarLista() retorna uma lista de objetos do tipo Cliente.
package app;
public class Cliente {
private String nome;
private String telefone;
public Cliente(String name, String phone) {
this.nome = name;
this.telefone = phone;
}
public String getNome() {
return nome;
}
public String getTelefone() {
return telefone;
}
}
package app;
import javax.microedition.io.ConnectionNotFoundException;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.IOException;
//verificar a definição da classe
public class MidletApp extends MIDlet {
private Display display;
private Cliente[] clientes;
private List lista;
private Command chamar = new Command(“Chamar”, Command.SCREEN, 1);
private Command fechar = new Command(“Fechar”, Command.SCREEN, 1);
public MidletApp(){
display = display.getDisplay(this);
try {
clientes = GerenciarLista.carregarLista();
} catch (IOException e) {
apresentarMensagem(“Erro ao ler clientes.”);
return;
}
lista = new List(“Clientes”, List.IMPLICIT);
lista.addCommand(chamar);
lista.addCommand(fechar);
lista.setCommandListener(this);
for(int i=0; i<clientes.length; i++) {
lista.append(clientes[i].getNome(), null);
}
//Completar o construtor.
}
public void startApp() {
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if ((c == chamar) || (c == List.SELECT_COMMAND)) {
int index = lista.getSelectedIndex();
try {
//Executar a chamada para o telefone do cliente.
} catch (ConnectionNotFoundException e) {
apresentarMensagem(“Erro detectado.”);
}
} else if (c == fechar) {
//Fechar a aplicação.
}
}
private void apresentarMensagem(String text) {
//Implementar um método que apresenta uma mensagem de erro.
}
}
Algumas partes que ainda precisam ser implementadas estão identificadas por comentários. Tendo como base os comentários e as características da linguagem JAVA, é INCORRETO afirmar que