De acordo com o código abaixo
identifique quais os pontos falhos do ponto de vista de acoplamento e coesão.
Melhore o código a fim de eliminar as falhas encontradas.
import java.util.ArrayList;
import java.util.HashMap;
public class Celular {
private String marca;
private String modelo;
private String numero;
private String proprietario;
private String operadora;
private double preco;
private static ArrayList operadoras;
private static HashMap<String, String> prefixosDasOperadoras;
public Celular(String
marca, String modelo, double valor){
this.marca = marca;
this.modelo = modelo;
this.preco = valor;
inicializarOperadorasESeusPrefixos();
}
private void inicializarOperadorasESeusPrefixos() {
operadoras = new ArrayList<String>();
operadoras.add("oi");
operadoras.add("claro");
operadoras.add("tim");
prefixosDasOperadoras = new HashMap();
prefixosDasOperadoras.put("oi_1", "8803"); prefixosDasOperadoras.put("oi_2", "8806");
prefixosDasOperadoras.put("oi_3", "8710");
prefixosDasOperadoras.put("oi_4", "8700");
prefixosDasOperadoras.put("claro", "9127");
prefixosDasOperadoras.put("tim", "99");
}
public void venderCelular(
String dono, String
numeroEscolhido, String operadora){
this.proprietario = dono;
if(verificarOperadoraENumero(numeroEscolhido,
operadora)){
this.numero =
numeroEscolhido;
this.operadora = operadora;}
}
System.out.println("ERRO");
}
private boolean
verificarOperadoraENumero(String
numeroEscolhido, String op) {
String prefixo = numeroEscolhido.substring(4);
if (!operadoras.contains(op) ||
!prefixosDasOperadoras.containsKey(prefixo)){
return false;
}
return true;
}}
Deseja Saber a resposta??
Nenhum comentário:
Postar um comentário
Obrigado por nos visitar!