Der er ingen måde at undgå objektoprettelse i Java. Objektoprettelse i Java på grund af dets hukommelsesallokeringsstrategier er hurtigere end C++ i de fleste tilfælde, og til alle praktiske formål kan sammenlignet med alt andet i JVM betragtes som "gratis".
Hvad er måderne til at undgå oprettelse af objekter i Java?
I java kan vi undgå oprettelse af objekter på 2 måder:
- At gøre klassen abstrakt, så vi kan undgå unødvendig oprettelse af objekter med i samme klasse og en anden klasse.
- Gør konstruktøren som privat (Singleton-designmønster), så vi kan undgå objektoprettelse i en anden klasse, men vi kan oprette objekt i overordnet klasse.
Er det dyrt at oprette objekter i Java?
Hver objektoprettelse er nogenlunde lige så dyr som en malloc i C eller en ny i C++, og der er ingen nem måde at skabe mange objekter sammen på, så du kan ikke drage fordel af af effektivitetsgevinster, du opnår ved at bruge masseallokering.
Hvorfor skal vi oprette et objekt i Java?
Objekter er påkrævet i OOPs fordi de kan oprettes til at kalde en ikke-statisk funktion, som ikke er til stede i hovedmetoden, men til stede i klassen, og som også giver navnet til rummet, som bruges til at gemme dataene.
Kan vi oprette objekter uden nyt i Java?
Du kan oprette et objekt uden nyt gennem: Reflection/newInstance, clone and(af)serialisering.