Forskel mellem objekt og instans

Forskel mellem objekt og instans
Forskel mellem objekt og instans

Video: Forskel mellem objekt og instans

Video: Forskel mellem objekt og instans
Video: Symbian - ЖИВА В 2020?! 2024, November
Anonim

Object vs Instance

Object Oriented Programming (OOP) er et af de mest populære programmeringsparadigmer. I OOP er fokus på at tænke på det problem, der skal løses, i form af elementer fra den virkelige verden og at repræsentere problemet i form af objekter og deres adfærd. Mange programmeringssprog, der understøtter nøgleaspekter af OOP (kaldet OOP-sprog), har klassen som det vigtigste programmeringsværktøj. De kaldes klassebaserede. Klasser er en abstrakt repræsentation af objekter i den virkelige verden. Klasser har egenskaber kaldet attributter. Attributter implementeres som globale og instansvariabler. Metoder i klasserne repræsenterer eller definerer disse klassers adfærd. Metoder og attributter for klasser kaldes medlemmer af klassen. I meget enkle vendinger er en klasse en blueprint eller en skabelon for et specifikt objekt fra det virkelige liv. Så et objekt er den eller de hukommelsesblokke, der bruges til at lagre nødvendig information i henhold til denne plan. Forekomst er en hukommelsesblok, der henviser til et objekt.

Hvad er et objekt?

Objekter er resultatet af instansiering af en klasse. Instantiation er processen med at tage planen og definere hver egenskab og adfærd, så det resulterende objekt faktisk repræsenterer et virkeligt objekt. Objekt er en dedikeret og kontinuerlig blok af hukommelse, der er allokeret til at gemme information såsom variabler, metoder eller funktioner osv. Objekt er oprettet ved brug af ny operatør, i Java programmeringssprog. For eksempel, hvis der er en klasse kaldet Car, så kan følgende bruges til at oprette et objekt af Car-klassen.

ny bil();

Her oprettes et bilobjekt af den nye operatør, og en reference til objektet returneres. Den nye operatør sammen med konstruktøren af Car-klassen bruges til at oprette det nye objekt. Objektets levetid starter fra opkaldet til dets konstruktør til det tidspunkt, hvor det ødelægges. Når en genstand ikke er henvist, vil den blive fjernet/destrueret af skraldesamleren.

Hvad er en instans?

Instance er en hukommelsesblok, som indeholder referencen til et objekt. Med andre ord vil Instance beholde adressen på starthukommelsesblokken, hvor objektet er gemt. Faktisk kan navnet på instansen bruges til at få adgang til starten af objekthukommelsesområdet. Offsets fra starthukommelsen beregnes af runtime-motoren, så vi kan gå derhen, hvor de enkelte data eller metodereferencer er gemt. Følgende Java-kode klippet kan bruges til at oprette en forekomst af et bilobjekt.

Car myCar=ny bil();

Som nævnt ovenfor opretter den nye operatør bilobjektet og returnerer referencen til det. Denne reference er gemt i Car type variablen myCar. Så myCar er forekomsten af det oprettede bilobjekt.

Hvad er forskellen mellem et objekt og en instans?

Objekt er en sammenhængende hukommelsesblok, der gemmer den faktiske information, der adskiller dette objekt fra andre objekter, mens en instans er en reference til et objekt. Det er en hukommelsesblok, som peger på den stirrende adresse, hvor objektet er gemt. To tilfælde kan referere til det samme objekt. Levetiden for et objekt og en instans er ikke relateret. Derfor kan en instans være nul. Når alle forekomster, der peger på et objekt er fjernet, vil objektet blive ødelagt.

Anbefalede: