Skip to content

Tag 06: OOP

CodingRobIT edited this page Mar 14, 2023 · 1 revision

Objektorientierte Programmierung (OOP)

Ein Objekt erstellen

Objekte bestehen aus Gemeinsamkeiten, wie z.B. ein Buch. Alle Bücher haben ein Cover, einen Titel, einen Autor, eine ISBN usw.

Mit diesen Informationen können wir "Objekte"(Class) erstellen.

Für ein Buch erstellen wir z.B. die Klasse "Book". und die Eigenschaften des Buches

public class Book {
    private String cover;
    private String title;
    private String author;
    private int pageCount;
    private String isbn;
    private String publisher;
    private double price;

In der Main Class erstellen wir eine Variable, um unsere Datenbank "Book" mit Informationen zu füllen. und eine Variable, um ein neues Book zu erstellen.

public class Main {

    public static void main(String[] args) {
        Book abdulsBook = new Book();

        abdulsBook.setCover("Gebäude");
        abdulsBook.setAuthor("Elisabeth Jung");
        abdulsBook.setTitle("Java Übungsbuch");

"Private" und "Public"

Da die Eigenschaften des Buches "Private" sind, benötigen wir in der Klasse "Book"

eine Get- und eine Set-Methode (Getter und Setter) wenn wir z.B. "title" in die Datenbank bekommen und auch wieder ausgeben wollen. Dazu brauchen wir folgende zwei Methoden

  }

    public String getTitle() {
        return title;
    }
  }

    public void setTitle(String title) {
        his.title = title;
    }

Konstruktor

Kann aus der Variable,

 Book noMansBook = new Book();

Die Parameter in der () werden direkt übernommen und müssen nicht extra über eine set-Methode aufgerufen werden.

Book noMansBook = new Book("Pumukl","12314","Haus");

Pumuckl ist hier titel >> 12314 ist isbn >> Haus ist cover

der Konstruktor

ist in der Klasse "Book" und wird wie folgt erstellt.

private String titel;    //Parameter
private int isbn;

// Default constructor. //Konstruktor ohne Parameter
public Book() {
 
}

public Person(String titel, int isbn) {     //Konstruktor mit Parameter
    this.titel = titel;
    this.isbn = isbn;
}

toString Methode

Mit einem Rechtsklick in der Klasse "Book" kann ein toString erzeugt werden.

Der toString formatiert dann für ein System.out.println(); die Werte wie Titel, ISBN etc. wie z.B.

    @Override
    public String toString() {
        return "Book{" +
                "titel='" + id + '\'' +
                ", isbn='+ '\'' +
                '}';
    }

equals und Hashcode

kann einfach auf die gleiche Weise erzeugt werden wie ein toString und sieht dann wie folgt aus

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Student student)) return false;

        if (getId() != null ? !getId().equals(student.getId()) : student.getId() != null) return false;
        return getName() != null ? getName().equals(student.getName()) : student.getName() == null;
    }

    @Override
    public int hashCode() {
        int result = getId() != null ? getId().hashCode() : 0;
        result = 31 * result + (getName() != null ? getName().hashCode() : 0);
        return result;
    }

Links zur Folie

Clone this wiki locally