Video: Kan Java abstrakt klasse have konstruktør?
2024 Forfatter: Lynn Donovan | [email protected]. Sidst ændret: 2023-12-15 23:45
Ja, en abstrakt klasse kan have -en konstruktør i Java . Du kan enten udtrykkeligt angive en konstruktør til abstrakt klasse eller hvis du ikke gør det, compileren vilje tilføje standard konstruktør uden argument i abstrakt klasse . Dette gælder for alle klasser og det gælder også for en abstrakt klasse.
Kan en konstruktør derfor være abstrakt i Java?
Du kan ikke har en abstrakt konstruktør , som abstrakt betyder, at du skal levere implementeringen til det på et tidspunkt i din underklasse. Men du kan ikke tilsidesætte konstruktør . Der vilje ingen mening i at have en abstrakt konstruktør : Dig vilje ring altid til konstruktør af børneklasse og ikke af basisklasse.
På samme måde, hvordan kalder man en abstrakt klassekonstruktør? Du kan definere en konstruktør i en abstrakt klasse , men du kan ikke konstruere det objekt. Dog konkrete under- klasser kan (og skal) opkald en af de konstruktører defineret i abstrakt forælder klasse . Det kan du ikke opkald en abstrakt klassekonstruktør med en klasse instansskabelsesudtryk, dvs.
På samme måde spørger folk, hvorfor har en abstrakt klasse en konstruktør?
EN konstruktør i Java "bygger" ikke objektet faktisk, det bruges til at initialisere felter. Forestil dig, at din abstrakt klasse har felterne x og y, og at du altid ønsker, at de skal initialiseres på en bestemt måde, uanset hvilken konkret konkret underklasse, der til sidst oprettes.
Kan abstrakt klasse have objekter i Java?
Fordi det er abstrakt og en objekt er konkret. Nej, designere gav ikke en måde. Fordi en abstrakt klasse er en ufuldstændig klasse (ufuldstændig i den forstand, det indeholder abstrakt metoder uden krop og output) kan vi ikke oprette en instans eller objekt ; på samme måde som du siger for en grænseflade.
Anbefalede:
Kan abstrakt klasse have konstruktør?
Ja, en abstrakt klasse kan have en konstruktør i Java. Du kan enten eksplicit give en konstruktør til abstrakt klasse, eller hvis du ikke gør det, vil compileren tilføje standard konstruktør uden argument i abstrakt klasse. Dette gælder for alle klasser, og det gælder også for en abstrakt klasse
Kan abstrakt klasse have adgangsmodifikatorer?
En Java-klasse, der indeholder en abstrakt klasse, skal erklæres som abstrakt klasse. En abstrakt metode kan kun indstille en synlighedsmodifikator, en offentlig eller beskyttet. Det vil sige, at en abstrakt metode ikke kan tilføje statisk eller endelig modifikator til erklæringen
Hvad er forskellen mellem abstrakt klasse og abstrakt metode?
Abstrakte metoder er kun erklæring, og de vil ikke have implementering. En Java-klasse, der indeholder en abstrakt klasse, skal erklæres som abstrakt klasse. En abstrakt metode kan kun indstille en synlighedsmodifikator, en offentlig eller beskyttet. Det vil sige, at en abstrakt metode ikke kan tilføje statisk eller endelig modifikator til erklæringen
Kan en klasse have en konstruktør?
Det er muligt for en klasse ikke at have nogen konstruktør. (En vigtig skelnen at trække her er, at JVM ikke kræver, at alle klassefiler har en konstruktør, men enhver klasse defineret i Java har en standardkonstruktør, hvis en konstruktør ikke er eksplicit erklæret
Kan abstrakt klasse have ikke-abstrakte metoder?
Ja, vi kan have en abstrakt klasse uden abstrakte metoder, da begge er uafhængige begreber. At erklære et klasseabstrakt betyder, at det ikke kan instansieres alene og kun kan underklassificeres. At erklære et metodeabstrakt betyder, at Metode vil blive defineret i underklassen