Instantiacija yra didžiulis žodis, apibūdinantis universalią ir paprastą Java programavimo koncepciją, kuriant naujus objektų naudoti programoje. Šiame skyriuje aptarsime kas yra „Java“ egzempliorių kūrimas, kaip sukurti klasę, ir Kokie yra klasės egzempliorių ar objektų kūrimo būdai?
Instantiacija
Į Java , instantiacija reiškia skambinti konstruktorius klasės, kuri sukuria an instancija arba objektas tos klasės tipo. Kitaip tariant, klasės objekto sukūrimas vadinamas instantiacija . Jis užima pradinę objekto atmintį ir grąžina nuorodą. Objekto egzempliorius Java pateikia klasės projektą.
Kas yra objektas?
- Tai vykdymo laikas.
- Jame yra klasės planas.
- Galime sukurti bet kokį klasės objektų skaičių.
- Tai gali būti vartotojo apibrėžti duomenys, pvz Vektorius , Sąrašai ir kt.
Instantiavimo sintaksė
ClassName objName = new ClassName();
Arba
ClassName cn; cn= new ClassName;
Supraskime aukščiau pateiktus teiginius per pavyzdį.
Egzempliorių kūrimas
Yra du būdai sukurti egzempliorius:
- Naudojant naujas raktinis žodis
- Naudojant Statinis gamyklinis metodas
Naujo raktinio žodžio naudojimas
„Java“ suteikia naujas raktažodį sukurti klasę.
Nuorodos apibrėžimas
//defines a reference (variable) that can hold an object of the DemoClass DemoClass dc;
Instantiacija
padaryti sh scenarijų vykdomąjį
DemoClass dc = new DemoClass(); //instantiation
Aukščiau pateiktą klasę taip pat galime sukurti taip, jei apibrėžiame atskaitos kintamąjį.
//creates a DemoClass object (instantiate) //new keyword allocates memory space for the newly created object dc = new DemoClass();
Mes pastebime, kad kai naudojame naujas raktinį žodį, po kurio eina klasės pavadinimas, jis sukuria tos klasės egzempliorių arba objektą. Konstruktoriaus kūrimas klasė taip pat žinomas kaip instantiacija .
Pastaba: jei norime iškviesti vietinės vidinės klasės metodus, turime sukurti tą klasę.
Naudojant statinį gamyklinį metodą
Kitas būdas sukurti klasę yra skambinti a statinis gamyklinis metodas . Klasė gali pateikti viešą statinį gamyklos metodą, kuris yra ne kas kita, kaip statinis metodas, kuris grąžina an instancija klasės. Visada atminkite, kad tai nėra tas pats, kas gamyklos metodo modelis .
Mes galime naudoti jį vietoj konstruktoriaus. Statinio gamyklos metodo pateikimas vietoj konstruktoriaus turi ir privalumų, ir trūkumų. The Pirmas privalumas yra tas, kad statiniai gamykliniai metodai taip pat turi pavadinimus, skirtingai nei konstruktoriai. The antra privalumas yra tas, kad, skirtingai nei konstruktoriai, jie neprivalo kurti naujo objekto kiekvieną kartą, kai jie iškviečiami. The trečias privalumas yra tas, kad skirtingai nei konstruktoriai, jie gali grąžinti bet kurio grąžinimo tipo potipio objektą. The ketvirta privalumas yra tas, kad jie sumažina parametrinių tipų egzempliorių kūrimo sudėtingumą.
Trūkumas yra tas, kad pateikiant tik statinius gamyklos metodus, klasės be viešųjų ar saugomų konstruktorių negali būti klasifikuojamos. Kitas trūkumas yra tai, kad jie nėra lengvai atskiriami nuo kitų statinių metodų.
Pažiūrėkime statinio gamyklos metodo pavyzdį.
public final class Furniture { //.. private int price; private String description; private Furniture (int price, String description) { this.price = price; this.description = description; } public static Furniture getNewFurniture (int price, String description) { return new Furniture (price, description); } //.. }
Pažiūrėkime į keletą svarbių klausimų, kurie gali spragtelėti galvoje.
Ar galime sukurti abstrakčią klasę?
Ne, mes negalime kartoti abstrakčios klasės . Bet jie gali būti suskirstyti į pogrupius. Kai abstrakčioji klasė priskiriama poklasiams, joje paprastai pateikiamos visos abstrakčios dalys metodus savo tėvų klasėje.
Kuo skiriasi egzistavimas ir inicijavimas?
Instantiacija ir inicijavimas yra visiškai skirtingos „Java“ programavimo sąvokos.
np.unikali
Inicijavimas: Reikšmės priskyrimas kintamajam vadinamas inicijavimas . Pavyzdžiui, kaina = 100 . Ji nustato pradinę kintamųjų išlaidų vertę į 100.
Egzistavimas: Objekto sukūrimas naudojant naują raktinį žodį vadinamas paleidimu. Pavyzdžiui, Automobilis ca = naujas automobilis(). Tai sukuria automobilių klasės egzempliorių.