Plain Old Java Objects (POJO)

Tipi di dati ed eccezioni in Java

Jim White

Java Developer

Panoramica: tipi di dati ed eccezioni

  • Capitolo 1
    • Plain old (o ordinary) Java objects
    • Classi wrapper
    • Uso dei package
  • Capitolo 2
    • Collections Framework
  • Capitolo 3
    • Eccezioni e gestione delle eccezioni

Come gestisce Java dati e problemi? È il tema di questo corso.

1 Foto di Mika Baumeister su Unsplash
Tipi di dati ed eccezioni in Java

Oggetti Java come strutture dati

  • Gli oggetti Java memorizzano e organizzano i dati.
    • Creati da classi personalizzate
  • Memorizzano i dati nei campi
    • Fanno da "valigie" dei dati dell’app
  • Detti POJO
    • Plain ordinary Java object
    • O Plain old Java object
  • Oggetti Java semplici trasportano i dati
    • Seguono alcune regole
    • Non contengono logica

Gli oggetti Java, o POJO, sono come valigie che trasportano i dati in un’applicazione.

1 Foto di Caroline Selfors su Unsplash
Tipi di dati ed eccezioni in Java

Getter e setter

  • Getter e setter sono public
    • I campi sono private
  • Getter e setter proteggono i dati in un POJO
    • Favoriscono l’incapsulamento
  • Nascondono i dettagli d’implementazione dei campi
Tipi di dati ed eccezioni in Java

Linee guida per le classi POJO

  • Una classe POJO deve:
    • Essere public
    • Avere getter/setter public per tutti i campi
      • I campi devono essere private
    • Avere un costruttore di default (senza argomenti)

Le classi POJO dovrebbero seguire queste regole

1 Foto di Anastasiya Badun su Unsplash
Tipi di dati ed eccezioni in Java

Cose da non fare con i POJO

  • Una classe POJO non deve:
    • Essere legata a un framework
    • Estendere altre classi
    • Implementare interfacce
      • Tranne Serializable in alcuni casi
    • Contenere business logic
  • Anche queste regole a volte si allentano
    • Tieni i POJO semplici

Le classi POJO non dovrebbero avere nessuna di queste caratteristiche

1 Foto di Anastasiya Badun su Unsplash
Tipi di dati ed eccezioni in Java

Getter

  • Nomi dei metodi getter
    • Iniziano con "get" (per boolean con "is")
    • Terminano con il nome del campo
    • lower camel case
    • Esempio: get + make = getMake
  • Non accettano parametri
  • Restituiscono il valore del campo
  • I getter possono nascondere i dettagli d’implementazione del campo
    private String make;

    public String getMake() {
        return make;
    }
    private short on;

    public boolean isOn() {
      if (on == 0) {
        return false;
      } else {
        return true;
      }
    }
Tipi di dati ed eccezioni in Java

Setter

  • Nomi dei metodi setter
    • Iniziano con "set", terminano con il nome del campo
    • lower camel case
    • Esempio: set + make = setMake
  • Accettano un solo parametro: il nuovo valore del campo
    • Usa this per distinguere il campo dal parametro
  • Restituiscono void (niente)
  • Possono validare i dati
    private String make;

    public void setMake(String make) {
        this.make = make;
    }
    private int age;

    public void setAge(int age) {
      if ((age >= 0) && (age <= 120)) {
        this.age = age;
      }
    }
Tipi di dati ed eccezioni in Java

Esempio di POJO

  • Classe public
  • Campi private
  • Getter/setter public
    • I getter restituiscono il valore di un campo
    • I setter impostano il valore di un campo
  • Costruttore di default / senza argomenti
public class Car {   // POJO class is public
    private String model;  // Fields are private
    private int year;

    // Default no arg constructor

    // Public getters to access POJO data
    public String getModel() {
        return model;
    }
    public int getYear() {
        return year;
    }
    // Public setters to set POJO fields
    public void setModel(String model) {
        this.model = model;
    }
    public void setYear(int year) {
        this.year = year;
    }
}
Tipi di dati ed eccezioni in Java

Let's practice!

Tipi di dati ed eccezioni in Java

Preparing Video For Download...