Problema de certificación en java: teniendo en cuenta que los arrays de java son mutables, cómo protegerías la clase CuentasPrivilegiadas?
Cuenta.java
package banco;
public class Cuenta {
private long numero;
public Cuenta(long numero, String password){
this.numero = numero;
}
public Cuenta(Cuenta origen) {
this.numero = origen.numero;
}
public long getNumero () {
return numero;
Professional Security Auditor
Actividad Búsqueda de vulnerabilidades en
el código
}
public void setNumero(long numero,String password){
this.numero = numero;
}
public boolean bloqueada() {
return numero % 2 == 0;
}
public String toString() {
return numero + "-" + bloqueada();
}
}
CuentasPrivilegiadas.java
package banco;
public class CuentasPrivilegiadas {
private Cuenta[] cuentas;
public CuentasPrivilegiadas() {
cuentas = new Cuenta[2];
cuentas[0] = new Cuenta(33631,"password");
cuentas[1] = new Cuenta(6293,"otherpassword");
}
public Cuenta[] getCuentasPrivilegiadas() {
return cuentas;
}
public void show() {
System.out.println("Cuentas privilegiadas:");
for (int index=0;index<cuentas.length;index++)
System.out.println(cuentas[index]);
}
}