Kan en klass ha en konstruktör?
Kan en klass ha en konstruktör?

Video: Kan en klass ha en konstruktör?

Video: Kan en klass ha en konstruktör?
Video: Рефакторинг: switch vs if-else vs enum vs HashMap [Шаблон "Команда"] 2024, April
Anonim

Det är möjligt för en klass till ha Nej konstruktör . (En viktig skillnad att dra här är att JVM gör kräver inte alla klass filer till har en konstruktör ; dock någon klass definieras i Java har en standard konstruktör Om en konstruktör inte uttryckligen deklareras.

Därav, måste en klass ha en konstruktor?

Java kräver inte en konstruktör när vi skapar en klass . Kompilatorn ger automatiskt ett offentligt nej-argument konstruktör för alla klass utan konstruktörer . Detta kallas standard konstruktör . Om vi do uttryckligen deklarera a konstruktör av någon form, kommer inte denna automatiska infogning av kompilatorn att ske.

Förutom ovan, vad händer om vi inte skriver någon konstruktor i klassen? Svar: Java gör inte faktiskt kräver en explicit konstruktör i klassen beskrivning. Om du låt bli omfatta en konstruktör , kommer Java-kompilatorn att skapa a standard konstruktör i bytekoden med ett tomt argument.

Med hänsyn till detta, hur många konstruktörer kan en klass ha?

Du kan ha 65535 konstruktörer i en klass (Enligt Oracle docs). Men VIKTIGT ha detta i ditt sinne. Vi uppnår detta endast genom KONSTRUKTÖR ÖVERBELASTNING (https://beginnersbook.com/2013/05/ konstruktör -överbelastning/). Du burk skapa många konstruktörer men med annorlunda signaturer.

Kan en klass inte ha någon konstruktor C++?

Om din klass har inga konstruktörer , C++ kommer automatiskt generera en offentlig standard konstruktör till dig. Detta kallas ibland implicit konstruktör (eller implicit genererad konstruktör ).

Rekommenderad: