logo

Hvordan lage en rekke objekter i Java?

Forutsetning – Ulike måter å lage objekter på i Java

Java programmeringsspråk handler om klasser og objekter som det er en objektorientert programmeringsspråk . Når vi krever at et enkelt objekt lagres i programmet vårt, gjør vi det med en variabel av typen Objekt. Men når vi arbeider med mange objekter, er det foretrukket å bruke en rekke objekter.



Matrisen av objekter selve navnet antyder at den lagrer en rekke objekter. I motsetning til den tradisjonelle matrisen lagrer verdier som streng, heltall, boolsk osv En rekke objekter butikker gjenstander det betyr at objekter er lagret som elementer i en matrise. Merk at når vi sier En rekke objekter det er ikke selve objektet som er lagret i matrisen, men referansen til objektet.

Opprette en rekke objekter i Java -

En rekke objekter opprettes ved hjelp av Objektklasse , og vi vet at objektklassen er rotklassen til alle klasser.



Vi bruker Klassenavn etterfulgt av en firkantet parentes [] deretter objektreferansenavn for å lage en Array of Objects.

Class_Name[ ] objectArrayReference;>

Alternativt kan vi også erklære en rekke objekter som:

Class_Name objectArrayReference[ ];>

Begge de ovennevnte erklæringene innebærer det objectArrayReference er en rekke objekter.



For eksempel, hvis du har en klassestudent, kan vi lage en rekke studentobjekter som gitt nedenfor:

byte array til streng
Student[ ] studentObjects; Or Student studentObjects[];>

Instantier utvalget av objekter –

Syntaks:

Class_Name obj[ ]= new Class_Name[Array_Length];>

For eksempel, hvis du har en klassestudent, og vi ønsker å deklarere og instansiere en rekke studentobjekter med to objekter/objektreferanser, vil det bli skrevet som:

Student[ ] studentObjects = new Student[2];>

Og når en rekke objekter er instansiert på denne måten, må de individuelle elementene i arrayen av objekter opprettes ved å bruke det nye nøkkelordet.

Figuren nedenfor viser strukturen til en rekke objekter:

dynamisk array i java

Initialisering av en rekke objekter

Når utvalget av objekter er instansiert, må vi initialisere det med verdier. Vi kan ikke initialisere matrisen på den måten vi initialiserer med primitive typer, da den er forskjellig fra en rekke primitive typer. I en rekke objekter må vi initialisere hvert element i arrayet, det vil si at hver objekt-/objektreferanse må initialiseres.

Ulike måter å initialisere utvalget av objekter på:

  1. Ved å bruke konstruktørene
  2. Ved å bruke en egen medlemsmetode

1. Ved å bruke konstruktøren:

På tidspunktet for å lage faktiske objekter, kan vi tilordne startverdier til hvert av objektene ved å sende verdier til konstruktør hver for seg. Individuelle faktiske objekter lages med deres distinkte verdier.

Programmet nedenfor viser hvordan arrayen av objekter initialiseres ved hjelp av konstruktøren.

Java




git utsjekking

// Java program to demonstrate initializing> // an array of objects using constructor> class> GFG {> >public> static> void> main(String args[])> >{> >// Declaring an array of student> >Student[] arr;> >// Allocating memory for 2 objects> >// of type student> >arr =>new> Student[>2>];> >// Initializing the first element> >// of the array> >arr[>0>] =>new> Student(>1701289270>,>'Satyabrata'>);> >// Initializing the second element> >// of the array> >arr[>1>] =>new> Student(>1701289219>,>'Omm Prasad'>);> >// Displaying the student data> >System.out.println(> >'Student data in student arr 0: '>);> >arr[>0>].display();> >System.out.println(> >'Student data in student arr 1: '>);> >arr[>1>].display();> >}> }> // Creating a student class with> // id and name as a attributes> class> Student {> >public> int> id;> >public> String name;> >// Student class constructor> >Student(>int> id, String name)> >{> >this>.id = id;> >this>.name = name;> >}> >// display() method to display> >// the student data> >public> void> display()> >{> >System.out.println(>'Student id is: '> + id +>' '> >+>'and Student name is: '> >+ name);> >System.out.println();> >}> }>

>

>

Produksjon

Student data in student arr 0: Student id is: 1701289270 and Student name is: Satyabrata Student data in student arr 1: Student id is: 1701289219 and Student name is: Omm Prasad>

2. Ved å bruke en separat medlemsmetode:

Ved å bruke en separat medlemsmetode kan vi også initialisere objekter. EN medlemsfunksjon av den respektive klassen er opprettet og som brukes til å tilordne startverdiene til objektene.

linux hvordan gi nytt navn til en katalog

Programmet nedenfor viser hvordan arrayen av objekter initialiseres ved hjelp av en separat medlemsmetode.

Java




// Java program to demonstrate initializing> // an array of objects using a method> class> GFG {> >public> static> void> main(String args[])> >{> >// Declaring an array of student> >Student[] arr;> >// Allocating memory for 2 objects> >// of type student> >arr =>new> Student[>2>];> >// Creating actual student objects> >arr[>0>] =>new> Student();> >arr[>1>] =>new> Student();> >// Assigning data to student objects> >arr[>0>].setData(>1701289270>,>'Satyabrata'>);> >arr[>1>].setData(>1701289219>,>'Omm Prasad'>);> >// Displaying the student data> >System.out.println(> >'Student data in student arr 0: '>);> >arr[>0>].display();> >System.out.println(> >'Student data in student arr 1: '>);> >arr[>1>].display();> >}> }> // Creating a Student class with> // id and name as a attributes> class> Student {> >public> int> id;> >public> String name;> >// Method to set the data to> >// student objects> >public> void> setData(>int> id, String name)> >{> >this>.id = id;> >this>.name = name;> >}> >// display() method to display> >// the student data> >public> void> display()> >{> >System.out.println(>'Student id is: '> + id +>' '> >+>'and Student name is: '> >+ name);> >System.out.println();> >}> }>

>

>

Produksjon

Student data in student arr 0: Student id is: 1701289270 and Student name is: Satyabrata Student data in student arr 1: Student id is: 1701289219 and Student name is: Omm Prasad>

La oss se et annet eksempel der en rekke objekter er deklarert med innledende verdier:

Her erklæring av en rekke objekter gjøres ved å legge til startverdier.

Java




js flerlinjet streng
// Java program to demonstrate an array> // of objects is declared with initial values.> class> GFG {> >public> static> void> main(String args[])> >{> >// Creating an array of objects> >// declared with initial values> >Object[] javaObjectArray> >= {>'Maruti'>,>new> Integer(>2019>),>'Suzuki'>,> >new> Integer(>2019>) };> >// Printing the values> >System.out.println(javaObjectArray[>0>]);> >System.out.println(javaObjectArray[>1>]);> >System.out.println(javaObjectArray[>2>]);> >System.out.println(javaObjectArray[>3>]);> >}> }>

>

>

Produksjon

Maruti 2019 Suzuki 2019>