Verschil tussen object en instantie

Verschil tussen object en instantie
Verschil tussen object en instantie

Video: Verschil tussen object en instantie

Video: Verschil tussen object en instantie
Video: Nokia E7 против N8 [HD] 2024, November
Anonim

Object versus instantie

Object Oriented Programming (OOP) is een van de meest populaire programmeerparadigma's. In OOP ligt de nadruk op het nadenken over het op te lossen probleem in termen van elementen uit de echte wereld en het weergeven van het probleem in termen van objecten en hun gedrag. Veel programmeertalen die de belangrijkste aspecten van OOP ondersteunen (de zogenaamde OOP-talen) hebben de klasse als de belangrijkste programmeertool. Ze worden klassengebaseerd genoemd. Klassen zijn een abstracte weergave van objecten uit de echte wereld. Klassen hebben eigenschappen die attributen worden genoemd. Attributen worden geïmplementeerd als globale en instantievariabelen. Methoden in de klassen vertegenwoordigen of definiëren het gedrag van deze klassen. Methoden en attributen van klassen worden de leden van de klasse genoemd. In zeer eenvoudige bewoordingen is een klasse een blauwdruk of een sjabloon voor een specifiek object uit het echte leven. Een object is dus de geheugenblok(ken) die worden gebruikt om de benodigde informatie op te slaan volgens deze blauwdruk. Instantie is een geheugenblok dat naar een object verwijst.

Wat is een object?

Objecten zijn de resultaten van het instantiëren van een klasse. Instantiatie is het proces van het nemen van de blauwdruk en het definiëren van elk attribuut en gedrag, zodat het resulterende object een echt object vertegenwoordigt. Object is een speciaal en continu geheugenblok dat is toegewezen om informatie op te slaan, zoals variabelen, methoden of functies, enz. Object wordt gemaakt met behulp van een nieuwe operator, in de programmeertaal Java. Als er bijvoorbeeld een klasse is met de naam Car, kan het volgende worden gebruikt om een object van de klasse Car te maken.

nieuwe auto();

Hier wordt een Car-object gemaakt door de nieuwe operator en wordt een verwijzing naar het object geretourneerd. De nieuwe operator wordt samen met de constructor van de klasse Car gebruikt om het nieuwe object te maken. De levensduur van het object begint vanaf de oproep aan de constructeur tot het moment dat het wordt vernietigd. Zodra een object niet is doorverwezen, wordt het verwijderd/vernietigd door de vuilnisman.

Wat is een instantie?

Instance is een geheugenblok dat de verwijzing naar een object bevat. Met andere woorden, Instance behoudt het adres van het startgeheugenblok waarin het object is opgeslagen. In feite kan de naam van de instantie worden gebruikt om toegang te krijgen tot het begin van het objectgeheugengebied. Offsets uit het startgeheugen worden berekend door de runtime engine zodat we naar de plek kunnen gaan waar de individuele data of methodereferenties zijn opgeslagen. De volgende geknipte Java-code kan worden gebruikt om een instantie van een Car-object te maken.

Car myCar=nieuwe auto();

Zoals hierboven vermeld, maakt de nieuwe operator het Car-object aan en retourneert de verwijzing ernaar. Deze referentie wordt opgeslagen in de autotypevariabele myCar. Dus myCar is de instantie van het gemaakte Car-object.

Wat is het verschil tussen een object en een instantie?

Object is een aaneengesloten geheugenblok waarin de feitelijke informatie wordt opgeslagen die dit object van andere objecten onderscheidt, terwijl een instantie een verwijzing naar een object is. Het is een geheugenblok dat verwijst naar het startadres van waar het object is opgeslagen. Twee instanties kunnen verwijzen naar hetzelfde object. Levensduur van een object en een instantie zijn niet gerelateerd. Daarom kan een instantie null zijn. Zodra alle instanties die naar een object verwijzen zijn verwijderd, wordt het object vernietigd.

Aanbevolen: