Razlika između objekta i instance

Razlika između objekta i instance
Razlika između objekta i instance

Video: Razlika između objekta i instance

Video: Razlika između objekta i instance
Video: Nokia N8 семь лет спустя (2010) - ретроспектива 2024, Srpanj
Anonim

Objekt protiv instance

Objektno orijentirano programiranje (OOP) jedna je od najpopularnijih paradigmi programiranja. U OOP-u fokus je na razmišljanju o problemu koji treba riješiti u smislu elemenata stvarnog svijeta i predstavljanju problema u smislu objekata i njihovog ponašanja. Mnogi programski jezici koji podržavaju ključne aspekte OOP-a (zvani OOP jezici) imaju klasu kao glavni programski alat. Nazivaju se klasnim. Klase su apstraktni prikaz objekata stvarnog svijeta. Klase imaju svojstva koja se nazivaju atributi. Atributi su implementirani kao globalne varijable i varijable instance. Metode u klasama predstavljaju ili definiraju ponašanje tih klasa. Metode i atributi klasa nazivaju se članovima klase. Vrlo jednostavno rečeno, klasa je nacrt ili predložak za određeni objekt iz stvarnog života. Dakle, objekt je memorijski blok(ovi) koji se koristi za pohranu potrebnih informacija prema ovom nacrtu. Instanca je memorijski blok koji upućuje na objekt.

Što je objekt?

Objekti su rezultati instanciranja klase. Instanciranje je proces uzimanja nacrta i definiranja svakog atributa i ponašanja tako da rezultirajući objekt zapravo predstavlja stvarni objekt. Objekt je namjenski i kontinuirani blok memorije dodijeljen za pohranjivanje informacija kao što su varijable, metode ili funkcije, itd. Objekt se kreira korištenjem operatora new, u programskom jeziku Java. Na primjer, ako postoji klasa koja se zove Auto, onda se sljedeće može koristiti za stvaranje objekta klase Auto.

novi automobil();

Ovdje, novi operator kreira objekt Car i vraća referencu na objekt. Operator new zajedno s konstruktorom klase Car koristi se za kreiranje novog objekta. Životni vijek objekta počinje od poziva njegovom konstruktoru do trenutka kada je uništen. Nakon što objekt nije upućen, skupljač smeća će ga ukloniti/uništiti.

Što je instanca?

Instanca je memorijski blok koji sadrži referencu na objekt. Drugim riječima, Instanca će zadržati adresu početnog memorijskog bloka gdje je objekt pohranjen. Zapravo, naziv instance može se koristiti za pristup početku područja memorije objekta. Odmake od početne memorije izračunava runtime engine tako da možemo otići do mjesta gdje su pohranjeni pojedinačni podaci ili reference metoda. Sljedeći izrezani Java kod može se koristiti za stvaranje instance objekta Car.

Auto mojAuto=novi Auto();

Kao što je gore spomenuto, novi operator stvara objekt Car i vraća referencu na njega. Ova referenca je pohranjena u varijabli tipa automobila myCar. Dakle, myCar je instanca stvorenog objekta Car.

Koja je razlika između objekta i instance?

Objekt je kontinuirani blok memorije koji pohranjuje stvarne informacije koje razlikuju ovaj objekt od drugih objekata, dok je instanca referenca na objekt. To je blok memorije koji pokazuje početnu adresu gdje je objekt pohranjen. Dvije instance mogu se odnositi na isti objekt. Životni vijek objekta i instance nisu povezani. Stoga bi instanca mogla biti nula. Nakon što se uklone sve instance koje upućuju na objekt, objekt će biti uništen.

Preporučeni: