Heim  >  Artikel  >  Java  >  Was sind Java-Objekte? Einführung in Java-Objekte (Codebeispiele)

Was sind Java-Objekte? Einführung in Java-Objekte (Codebeispiele)

不言
不言nach vorne
2018-10-11 15:33:222974Durchsuche

In diesem Artikel erfahren Sie, was ein Java-Objekt ist. Die Einführung von Java-Objekten hat einen gewissen Referenzwert. Ich hoffe, dass es für Sie hilfreich ist.

Beispiel:

public class Book {

    /**
     * 书名
     */
    private String name;
    /**
     * 作者
     */
    private String author;

    /**
     * 获取书名
     * @return
     */
    public String getName() {
        return name;
    }

    /**
     * 设置书名
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取作者
     * @return
     */
    public String getAuthor() {
        return author;
    }

    /**
     * 设置作者
     * @param author
     */
    public void setAuthor(String author) {
        this.author = author;
    }

}

Was ist ein Objekt?

Die Definition eines Objekts in „JAVA Programming Thoughts“ lautet: die Elemente in der Problemraum und ihre Darstellungen im Programmraum werden „Objekte“ genannt.
1. Problemraum: Modell des tatsächlich gelösten Problems;
2.
Die Darstellung des tatsächlichen Problems im Computer (Maschinenmodell) wird als Objekt bezeichnet. Im obigen Beispiel verwendet der Computer eine eindeutige Entität (new Book()), um das Buch darzustellen. Diese Entität wird als Objekt bezeichnet und das Objekt ist eine Instanz der Klasse.

Was ist eine Klasse?

Die Abstraktion von Objekten mit denselben Eigenschaften und demselben Verhalten ist eine Klasse, das heißt, eine Klasse ist die Blaupause eines Objekts und die Die Beziehung zwischen den beiden besteht darin, dass eine Instanz einer Klasse ein Objekt ist und die Abstraktion von Objekten eine Klasse darstellt. Im obigen Beispiel: Book ist die Klasse.

Eigenschaften von Objekten

1. Verhalten: Klassenmethoden, Methoden im Beispiel: getName(), setName(String name), getAuthor(), setAuthor( String Autor).
2. Status: Attribute der Klasse, Attribute im Beispiel: Name, Autor,
3. Identität: die Adresse der Klasse im Speicher, die Adresse von new Book() im Speicher ist die Identifikation.

Objektorientierte Funktionen

1. Die Eigenschaften des Objekts ausblenden, aber Methoden bereitstellen, mit denen Benutzer mit diesen Eigenschaften interagieren können Nur Methoden verwenden Um auf die Eigenschaften eines Objekts zuzugreifen, erfordert die Kapselung eine private Eigenschaft: name, eine Eigenschaftszugriffsmethode: getName() und eine Eigenschaftsänderungsmethode: setName(String name).

2. Durch die Vererbung einer vorhandenen Klasse können Sie die Attribute und Methoden dieser Klasse wiederverwenden. Die geerbte Klasse wird als Unterklasse bezeichnet Spezifische Funktionen: Der Code der übergeordneten Klasse speichert im Allgemeinen allgemeine Methoden und Eigenschaften. Die Vererbung erfolgt über das Schlüsselwort „extens“.

Vererbungsbeispiel:

// 备注:class可以定义多个类,但只有一个public类,而且public修饰的类名称要和文件名称一致。
public class BookTest{
    public static void main(String[] args) {
        System.out.println(new HistoryBook().getName());
    }
}
class HistoryBook extends Book{
    /**
     * 发生日期
     */
    private LocalDate happenDate;
    protected LocalDate getHappenDate() {
        return happenDate;
    }
    public void setHappenDate(LocalDate happenDate) {
        this.happenDate = happenDate;
    }
}

Das obige HistoryBook ist eine Unterklasse von Book. In der Hauptmethode können Sie den Buchtitel direkt über das HistoryBook-Objekt abrufen in der HistoryBook-Klasse, kann aber aufgrund der Vererbung alle öffentlichen, geschützten und standardmäßig geänderten Methoden der übergeordneten Klasse aufrufen.

3. Polymorphismus: Das Phänomen, dass eine Variablenreferenz auf mehrere tatsächliche Typen verweisen kann, wird Polymorphismus genannt. Die Bildung von Polymorphismus basiert auf Vererbung (erweitert)/implementiert (implementiert). Der wichtige Punkt ist, dass die Referenz der übergeordneten Klasse auf die Variable der Unterklasse verweist, die Referenz der übergeordneten Klasse jedoch nicht der Variablen der Unterklasse zugewiesen werden kann.

Polymorphes Beispiel:

        // 父类引用指向子类,形成多态
        Book book = new HistoryBook();
        // 报错,原因:不能把父类引用赋值给子类,因为不能确定父类的具体类型,父类可能是A extends Book,也可能是B extends Book,不能把A或B强制转成HistoryBook,因为它们两之间是没有任何联系的。
        HistoryBook historyBook = (HistoryBook) new Book();
        // 这里是正常运行的,因为book其实指向的是一个HistoryBook的对象,这里是可以强制转换的。
        HistoryBook hb = (HistoryBook) book;

Das obige ist der detaillierte Inhalt vonWas sind Java-Objekte? Einführung in Java-Objekte (Codebeispiele). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen