Nein, abstrakte Klassen können nicht instanziiert werden. Dafür gibt es zwei Gründe: die Durchsetzung abstrakter Methoden und die Gewährleistung der konzeptionellen Integrität.
Können abstrakte Klassen in Java instanziiert werden?
Nein, abstrakte Klassen können nicht instanziiert werden.
Ursache:
Abstrakte Klasse ist ein spezieller Klassentyp, der abstrakte Methoden enthält, also Funktionen ohne Implementierung. Eine abstrakte Methode deklariert den Methodennamen, die Parameterliste und den Rückgabetyp, aber keinen tatsächlichen Implementierungscode.
Da eine abstrakte Klasse abstrakte Methoden enthält, können ihre Instanzen nicht erstellt werden. Das bedeutet, dass Sie das Schlüsselwort new
nicht zum Instanziieren einer abstrakten Klasse verwenden können. new
关键字来实例化抽象类。
为什么不使用抽象类?
不使用抽象类实例化有两个原因:
Animal
Es gibt zwei Gründe, die Instanziierung abstrakter Klassen nicht zu verwenden:
Implementierung abstrakter Methoden erzwingen: Der Zweck einer abstrakten Klasse besteht darin, Unterklassen zur Implementierung ihrer abstrakten Methoden zu zwingen. Wenn eine abstrakte Klasse instanziiert werden kann, können Unterklassen die Implementierung abstrakter Methoden umgehen.
Animal
die allgemeinen Merkmale von Tieren definieren, sie kann jedoch nicht in ein bestimmtes Tier instanziiert werden. 🎜🎜🎜🎜Alternative: 🎜🎜🎜Wenn Sie einen Typ benötigen, der nicht instanziiert werden kann, können Sie 🎜Interface🎜 verwenden. Eine Schnittstelle ähnelt einer abstrakten Klasse, enthält jedoch nur abstrakte Methoden und keine konkreten Implementierungen. Unterklassen müssen diese abstrakten Methoden implementieren, um die Schnittstelle nutzen zu können. 🎜Das obige ist der detaillierte Inhalt vonKönnen abstrakte Klassen in Java instanziiert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!