Menu
Coddy logo textTech

Campi (attributi)

Fa parte della sezione Programmazione orientata agli oggetti del percorso Java di Coddy. Lezione 6 di 87.

I campi (attributi) sono variabili che memorizzano dati all’interno di una classe. Di solito sono private e vi si accede tramite metodi getter e setter.

Dichiarazione dei campi

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

Aggiunta di getter e setter

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 della classe

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

Rendere i campi private si chiama incapsulamento. Protegge i dati controllando l'accesso tramite metodi e consente di aggiungere la convalida nei setter.

challenge icon

Sfida

Medio

Crea una classe BankAccount con campi privati e metodi getter:

  • Campi privati: accountName (String) e balance (double)
  • Un costruttore per impostare entrambi i campi
  • Metodi getter per ciascun campo
  • Metodo deposit() per aggiungere denaro
  • Metodo withdraw() che restituisce "Success" o "Insufficient funds"

Provalo tu

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 iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore Java online