Video: Kan Java abstrakt klasse ha konstruktør?
2024 Forfatter: Lynn Donovan | [email protected]. Sist endret: 2023-12-15 23:51
Ja, en abstrakt klasse kan ha en konstruktør i Java . Du kan enten gi eksplisitt en konstruktør til abstrakt klasse eller hvis du ikke gjør det, kompilatoren vil legg til standard konstruktør uten argument i abstrakt klasse . Dette er sant for alle klasser og det gjelder også for en abstrakt klasse.
Kan derfor en konstruktør være abstrakt i Java?
Du kan har ikke en abstrakt konstruktør , som abstrakt betyr at du må gi implementeringen for det på et tidspunkt i underklassen din. Men du kan ikke overstyre konstruktør . Der vil være ingen vits i å ha en abstrakt konstruktør : Du vil ring alltid konstruktør av barneklasse og ikke av grunnklasse.
På samme måte, hvordan kaller du en abstrakt klassekonstruktør? Du kan definere en konstruktør i en abstrakt klasse , men du kan ikke konstruere det objektet. Men konkrete under- klasser kan (og må) anrop en av konstruktører definert i abstrakt forelder klasse . Du kan ikke anrop an abstrakt klassekonstruktør med en klasse instansopprettingsuttrykk, dvs.
På samme måte spør folk, hvorfor har en abstrakt klasse en konstruktør?
EN konstruktør i Java "bygger" egentlig ikke objektet, det brukes til å initialisere felt. Tenk deg at din abstrakt klasse har feltene x og y, og at du alltid vil at de skal initialiseres på en bestemt måte, uansett hvilken konkret underklasse som til slutt blir opprettet.
Kan abstrakt klasse ha objekter i Java?
Fordi det er abstrakt og en gjenstand er konkret. Nei, designere ga ikke en måte. Fordi en abstrakt klasse er en ufullstendig klasse (ufullstendig i den forstand det inneholder abstrakt metoder uten kropp og utgang) kan vi ikke opprette en forekomst eller gjenstand ; på samme måte som du sier for et grensesnitt.
Anbefalt:
Kan abstrakt klasse ha konstruktør?
Ja, en abstrakt klasse kan ha en konstruktør i Java. Du kan enten eksplisitt gi en konstruktør til abstrakt klasse, eller hvis du ikke gjør det, vil kompilatoren legge til standard konstruktør uten argument i abstrakt klasse. Dette gjelder for alle klasser, og det gjelder også for en abstrakt klasse
Kan abstrakt klasse ha tilgangsmodifikatorer?
En Java-klasse som inneholder en abstrakt klasse må erklæres som abstrakt klasse. En abstrakt metode kan bare angi en synlighetsmodifikator, offentlig eller beskyttet. Det vil si at en abstrakt metode ikke kan legge til statisk eller endelig modifikator til erklæringen
Hva er forskjellen mellom abstrakt klasse og abstrakt metode?
Abstrakte metoder er kun erklæring og vil ikke ha implementering. En Java-klasse som inneholder en abstrakt klasse må erklæres som abstrakt klasse. En abstrakt metode kan bare angi en synlighetsmodifikator, offentlig eller beskyttet. Det vil si at en abstrakt metode ikke kan legge til statisk eller endelig modifikator til erklæringen
Kan en klasse med privat konstruktør arves i Java?
5 svar. Java forhindrer ikke underklassifisering av klasse med private konstruktører. Det den forhindrer er underklasser som ikke kan få tilgang til noen konstruktører av superklassen. Dette betyr at en privat konstruktør ikke kan brukes i en annen klassefil, og en lokal pakkekonstruktør kan ikke brukes i en annen pakke
Kan en klasse ha en konstruktør?
Det er mulig for en klasse å ikke ha noen konstruktør. (En viktig forskjell å trekke her er at JVM ikke krever at alle klassefiler har en konstruktør, men enhver klasse definert i Java har en standardkonstruktør hvis en konstruktør ikke er eksplisitt deklarert