Menu
Coddy logo textTech

Campos (Atributos)

Parte de la sección Programación Orientada a Objetos del Journey de Java de Coddy. Lección 6 de 87.

Los campos (atributos) son variables que almacenan datos dentro de una clase. Normalmente son private y se accede a ellos mediante métodos getter y setter.

Declaración de campos

public class Person {
    private String name;
    private int age;
}

Cómo añadir getters y setters

public class Person {
    private String name;
    private int age;
    
    public String getName() {
        return this.name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public int getAge() {
        return this.age;
    }
    
    public void setAge(int age) {
        if (age >= 0) {
            this.age = age;
        }
    }
}

Uso de la clase

Person person = new Person();
person.setName("Alice");
person.setAge(25);
System.out.println(person.getName());  // Alice

Hacer que los campos sean private se denomina encapsulación. Protege los datos controlando el acceso mediante métodos, lo que te permite añadir validación en los setters.

challenge icon

Desafío

Intermedio

Crea una clase BankAccount con campos privados y métodos getter:

  • Campos privados: accountName (String) y balance (double)
  • Un constructor para establecer ambos campos
  • Métodos getter para cada campo
  • Método deposit() para añadir dinero
  • Método withdraw() que devuelve "Success" o "Insufficient funds"

Pruébalo tú mismo

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        double initial = Double.parseDouble(scanner.nextLine());
        double deposit = Double.parseDouble(scanner.nextLine());
        
        BankAccount account = new BankAccount(name, initial);
        
        System.out.println("Account: " + account.getAccountName());
        System.out.println("Balance: " + account.getBalance());
        
        account.deposit(deposit);
        System.out.println("After deposit: " + account.getBalance());
        
        String result = account.withdraw(2000);
        System.out.println("Withdraw 2000: " + result);
        System.out.println("Final Balance: " + account.getBalance());
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Programación Orientada a Objetos

Practica por tu cuenta: Compilador de Java online