Menu
Coddy logo textTech

Campos (Atributos)

Parte da seção Programação Orientada a Objetos do Journey de Java da Coddy — lição 6 de 87.

Campos (atributos) são variáveis que armazenam dados dentro de uma classe. Eles são geralmente private e acessados por meio de métodos getter e setter.

Declarando campos

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

Adicionando getters e 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 a classe

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

Tornar os campos private é chamado de encapsulamento. Ele protege os dados controlando o acesso por meio de métodos, permitindo que você adicione validação em setters.

challenge icon

Desafio

Médio

Crie uma classe BankAccount com campos privados e métodos getter:

  • Campos privados: accountName (String) e balance (double)
  • Um construtor para definir ambos os campos
  • Métodos getter para cada campo
  • Método deposit() para adicionar dinheiro
  • Método withdraw() que retorna "Success" ou "Insufficient funds"

Folha de consulta

Campos (atributos) são variáveis que armazenam dados dentro de uma classe. Eles geralmente são private e acessados por meio de métodos getter e setter.

Declarando campos privados:

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

Adicionando getters e 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 a classe:

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

Tornar os campos private é chamado de encapsulamento. Isso protege os dados controlando o acesso por meio de métodos, permitindo que você adicione validação nos setters.

Experimente você mesmo

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 iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Programação Orientada a Objetos