Plain Old Java Objects (POJO)

Datatyper och undantag i Java

Jim White

Java Developer

Översikt – datatyper och undantagshantering

  • Kapitel 1
    • Plain old (eller vanliga) Java-objekt
    • Wrapper-klasser
    • Använda paket
  • Kapitel 2
    • Collections Framework
  • Kapitel 3
    • Undantag och undantagshantering

Hur hanterar Java data, problem och fel? Det är ämnet för den här kursen.

1 Foto av Mika Baumeister på Unsplash
Datatyper och undantag i Java

Java-objekt som datastrukturer

  • Java-objekt lagrar och organiserar data.
    • Skapas från egna klasser
  • Lagrar data i fält
    • Fungerar som programmets data-"väskor"
  • Kallas POJO
    • Plain ordinary Java object
    • Eller Plain old Java object
  • Enkla Java-objekt håller och flyttar data
    • Följer vissa regler
    • Innehåller ingen logik

Java-objekt, eller POJO, fungerar som väskor för att hålla och flytta data i ett program.

1 Foto av Caroline Selfors på Unsplash
Datatyper och undantag i Java

Getters och setters

  • Getters och setters är publika
    • Fält är privata
  • Getters och setters skyddar datan i ett POJO
    • Främjar datainkapsling
  • Döljer implementationsdetaljer för underliggande fält
Datatyper och undantag i Java

Riktlinjer för POJO-klasser

  • POJO-klassen bör:
    • Vara publik
    • Ha publika getters/setters för alla fält
      • Fält ska vara privata
    • Ha en standardkonstruktor (utan argument)

POJO-klasser ska följa dessa regler

1 Foto av Anastasiya Badun på Unsplash
Datatyper och undantag i Java

Vad POJO inte bör göra

  • POJO-klassen bör inte:
    • Vara bunden till ett ramverk
    • Ärva från andra klasser
    • Implementera något gränssnitt
      • Förutom Serializable i vissa fall
    • Innehålla affärslogik
  • Även dessa regler frångås ibland
    • Försök hålla POJO enkla

POJO-klasser ska inte ha någon av dessa egenskaper

1 Foto av Anastasiya Badun på Unsplash
Datatyper och undantag i Java

Getters

  • Getter-metodnamn
    • Börjar med "get" (boolean-getters börjar med "is")
    • Slutar med fältets namn
    • Lower camel case
    • Exempel: get + make = getMake
  • Tar inga parametrar
  • Returnerar fältets värde
  • Getters kan dölja detaljer om fältets implementation
    private String make;

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

    public boolean isOn() {
      if (on == 0) {
        return false;
      } else {
        return true;
      }
    }
Datatyper och undantag i Java

Setters

  • Setter-metodnamn
    • Börjar med "set", slutar med fältets namn
    • Lower camel case
    • Exempel: set + make = setMake
  • Tar en enda parameter – fältets nya värde
    • Använd this för att skilja fält från parameter
  • Returnerar void (ingenting)
  • Kan kontrollera datats giltighet
    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;
      }
    }
Datatyper och undantag i Java

POJO-exempel

  • Publik klass
  • Privata fält
  • Publika getters/setters
    • Getters returnerar ett fälts värde
    • Setters sätter ett fälts värde
  • Standard-/argumentlös konstruktor
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;
    }
}
Datatyper och undantag i Java

Nu kör vi en övning!

Datatyper och undantag i Java

Preparing Video For Download...