Java Fehler Cannot Instantiate the Type beheben
Heute erfahren Sie, wie Sie den Fehler Cannot Instantiate the Type
in Java beheben.
Dieser Fehlertyp tritt auf, wenn Sie versuchen, eine Instanz einer abstrakten Klasse zu erstellen. Lassen Sie uns etwas über abstrakte Klassen in Java lernen.
Behebung des Fehlers cannot instantiate the type
in Java
Normalerweise verwenden wir eine abstrakte Klasse, wenn wir einige gemeinsame Funktionalitäten für alle ihre Komponenten bereitstellen müssen. Sie können Ihre Klasse teilweise implementieren.
Sie können Funktionalitäten generieren, die alle Unterklassen überschreiben oder implementieren können. Sie können die abstrakte Klasse jedoch nicht instanziieren.
Sehen Sie sich den folgenden Code an:
abstract class Account { // abstract class Cannot Be initiated...
private int amount;
Account() {
// constructor............
}
public void withDraw(int amount) {
this.amount = this.amount - amount;
}
}
Die obige abstrakte Klasse Account
kann nicht instanziiert werden. Das heißt, Sie können den folgenden Code nicht schreiben.
Account acc = new Account(); // Abstract Cannot Intialized......
Also, was ist die Lösung? Sie können eine konkrete/untergeordnete Klasse dieser abstrakten Klasse erstellen und eine Instanz davon erstellen.
Zum Beispiel gibt es so viele Arten von Konten. Dies können Ersparnisse, Geschäfte, Lastschriften und vieles mehr sein.
Es handelt sich jedoch alle um tatsächliche Konten, und das haben sie gemeinsam. Deshalb verwenden wir abstrakte Methoden und Klassen.
Sehen Sie sich den folgenden Code an.
class BusinessAccount extends Account {
private int Bonus;
public void AwardBonus(int amount) {
this.Bonus = Bonus + amount;
}
}
Die Klasse BusinessAccount
ist eine konkrete und untergeordnete Klasse der abstrakten Klasse Account
. Sie können eine Instanz dieser Klasse erstellen und Ihre Arbeit erledigen.
BusinessAccount bb = new BusinessAccount();
// Bussiness Account Can Be intiated Because there is concreate defination..........
Die Schlussfolgerung ist also, dass Sie die abstrakte Klasse nicht instanziieren können; Stattdessen können Sie ihre untergeordnete Klasse erstellen und sie für dieselbe Funktionalität instanziieren.
Im Folgenden finden Sie einen vollständigen Code, den Sie auf Ihrem Computer ausführen können.
abstract class Account { // abstract class Cannot Be intiated...
private int amount;
Account() {
// constructor............
}
public void withDraw(int amount) {
this.amount = this.amount - amount;
}
}
class BusinessAccount extends Account {
private int Bonus;
public void AwardBonus(int amount) {
this.Bonus = Bonus + amount;
}
}
public class Main {
public static void main(String[] args) {
// Account acc = new Account(); // Abstract Cannot Intialized......
BusinessAccount bb = new BusinessAccount();
// Bussiness Account Can Be intiated Because there is concreate defination..........
}
}
Um mehr über die abstrakte Klasse zu erfahren, klicken Sie hier.
Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.
LinkedInVerwandter Artikel - Java Error
- Adresse wird bereits verwendet JVM_Bind-Fehler in Java
- Android Java.Lang.IllegalStateException behoben: Methode der Aktivität konnte nicht ausgeführt werden
- Ausnahme im Hauptthread Java.Lang.ClassNotFoundException in IntelliJ IDEA
- Ausnahme im Hauptthread Java.Lang.NoClassDefFoundError
- Beheben Sie das Problem, dass Java nicht installiert werden kann. Es gibt Fehler in den folgenden Schaltern
- Beheben Sie den Fehler `Es wurde keine Java Virtual Machine gefunden` in Eclipse