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. Por lo general, son private y se accede a ellos a través de métodos getter y setter.

Declaración de campos

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

Añadiendo 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;
        }
    }
}

Usando 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 llama encapsulamiento. Protege los datos al controlar el acceso a través de métodos, lo que permite agregar 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"

Hoja de referencia

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

Declaración de campos privados:

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

Añadiendo 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;
        }
    }
}

Usando 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 llama encapsulamiento. Protege los datos controlando el acceso a través de métodos, lo que permite añadir validación en los setters.

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