Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Errores en nombre de métodos y clases.

En el código anterior se producirá un error de compilación en la clase Main porque el atributo "balance" y el método "withdraw" estarán declarados como "privados", lo que significa que no se podrá acceder a él desde fuera de la propia clase Account.

Igualmente puede confundir a muchos que en la clase definan un método como retira y en la invocación en la clase Main lo invoquen como retirar.

Están mezcando nombres en inglés y nombres errados. En vez de Account debería ser Cuenta, es como aparece en la explicación, en vez de withdraw debería ser retirar, esa mezcla de nombres en inglés y en español pueden ser fatales, para muchos, para entender de que les etán hablando.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

En el código anterior se producirá un error de compilación en la clase Main porque el atributo "balance" y el método "withdraw" estarán declarados como "privados", lo que significa que no se podrá acceder a él desde fuera de la propia clase Account.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Acá siguen mezclando español con inglés y hablan de un atributo que no existe, el atributo balance no aparece como atributo de la clase, está es saldo.

2 respuestas

Hola Henry, espero que estés bien

Sugerencia: compartir tu proyecto en el canal #comparta-tu-codigo en el servidor ONE en Discord ;)

Entiendo tu confusión con la mezcla de idiomas y los errores de nombres en el código. Aquí te dejo algunos puntos para aclarar y corregir:

  1. Nombres Consistentes: Es importante mantener consistencia en los nombres de clases, métodos y atributos. Si decides usar español, usa siempre español. Cambia Account a Cuenta, withdraw a retira, y asegúrate de que los nombres sean coherentes en todo el código.

  2. Acceso a Atributos y Métodos: Cuando un atributo o método es privado (private), solo puede ser accedido desde dentro de la misma clase. Si necesitas acceder a ellos desde otra clase, como Principal, debes proporcionar métodos públicos (getters y setters) para permitir ese acceso.

  3. Corrección del Código:

    • Asegúrate de que los nombres de los métodos sean consistentes. Si el método se llama retira, asegúrate de llamarlo así en todas partes.
    • Proporciona métodos públicos para acceder a saldo y retira si necesitas usarlos desde Principal.

Aquí tienes un ejemplo corregido:

public class Cuenta {

    private double saldo;

    public void retira(double valor) {
        if (valor <= saldo) {
            saldo -= valor;
            System.out.println("Retiro exitoso. Nuevo saldo: " + saldo);
        } else {
            System.out.println("Saldo insuficiente.");
        }
    }

    public double getSaldo() {
        return saldo;
    }

    public void setSaldo(double saldo) {
        this.saldo = saldo;
    }
}

public class Principal {

    public static void main(String[] args) {
        Cuenta c1 = new Cuenta();
        c1.setSaldo(300);
        c1.retira(100);
    }
}

Espero que esto te ayude a entender mejor cómo manejar los modificadores de acceso y la importancia de la consistencia en los nombres. ¡Bons estudios!

Gracias, Brenda, el tema lo entiendo, solo quería informarles de esas inconsistencias que pueden causar confusiones a quiene empiezan en este mundo, para que pudieran corregir el documento.