Što je objekt u Javi i kako ga koristiti?



Objekt u Javi je entitet u stvarnom svijetu koji ima svoje svojstvo i ponašanje. Saznajte sve o objektima u Javi i kako ih stvoriti na više načina.

Java je . Drugim riječima, gotovo se sve u Javi tretira kao objekt. Stoga, dok programirate na Javi, treba znati sve moguće načine stvaranja objekata u Javi. Ali prije nego što dublje zaronite u predmete, morate znati pojam Java satovi i kako su predmeti povezani s njima.

U ovom ćemo postu objasniti 5 različitih načina stvaranja objekata u Javi i razumjeti sve bitne koncepte potrebne za razumijevanje metoda.





  1. Stvaranje objekata pomoću ključne riječi 'nova'
  2. Stvaranje objekata pomoću metode clone ()
  3. Stvaranje objekata pomoću metode klase newInstance ()
  4. Stvaranje objekata pomoću deserializacije
  5. Stvaranje objekata pomoću metode newInstance () konstruktorske klase

Započnimo.



Stvaranje objekata pomoću ključne riječi 'nova'

Tijekom programiranja na Javi možda ste definitivno naišli na ključnu riječ 'nova'. To je ključna riječ koja se koristi za stvaranje objekta koji se dinamički dodjeljuje memorija, tj. Memorija tim objektima dodjeljuje se u vrijeme izvođenja. A ova dinamička dodjela potrebna je većinu vremena tijekom stvaranja objekata. Stoga se ova metoda koristi češće od ostalih.

Sintaksa : ClassName ObjectName = new classConstructor ()



javna klasa ObjectCreation {String FirstString = 'Hello World' javna statička void glavna (String [] args) {ObjectCreation obj = new ObjectCreation () System.out.println (obj.FirstString)}}

Izlaz- Pozdrav svijete

primjer pregledača modela java

Ova metoda stvaranja objekata u Javi može se koristiti s bilo kojim konstruktorom potrebne klase ako klasa ima više od 1 graditelj .

Stvaranje objekata pomoću metode clone ()

Što ako bi objekt koji želimo stvoriti trebao biti kopija već postojećeg ? U tom slučaju možemo koristiti metodu clone (). clone () je dio klase Object, ali se ne može izravno koristiti jer je zaštićena metoda.

clone () metoda može se koristiti samo nakon implementacije Cloneable sučelja i rukovanjaCloneNotSupportedException.

class Message implementira Cloneable {String FirstString Message () {this.FirstString = 'Hello World'} javni objektni klon () baca CloneNotSupportedException {return super.clone ()}} javna klasa ObjectCreation {public static void main (String [] args) baca CloneNotSupportedException {Message FirstObj = new Message () System.out.println (FirstObj.FirstString) Message SecondObj = (Message) FirstObj.clone () System.out.println (SecondObj.FirstString) SecondObj.FirstString = 'Dobrodošli u svijet programiranja 'System.out.println (SecondObj.FirstString) System.out.println (FirstObj.FirstString)}}

Izlaz-

Pozdrav svijete

Pozdrav svijete

Dobrodošli u svijet programiranja

Pozdrav svijete

U gore navedenom programu stvorili smo kopiju našeg već postojećeg objekta. Da bi bili sigurni da i ne upućuju na isto memorijsko mjesto, bilo je bitno promijeniti vrijednost 'FirstString' za drugi objekt, a zatim ispisati njegovu vrijednost za oba objekta.

Stvaranje objekata pomoću metode newInstance () klase Class

Ova se metoda ne koristi često za stvaranje objekata. Ova metoda stvaranja objekta koristi se ako znamo ime klase i zadani konstruktor je javne prirode. Da bismo koristili ovu metodu za stvaranje objekata trebamo obraditi 3 iznimke

ClassNotFoundException- Ova se iznimka događa ako JVM ne može pronaći klasu koja se prosljeđuje kao argument.

InstantiationException- Ova se iznimka događa ako zadana klasa ne sadrži zadani konstruktor.

IllegalAccessException- Ova se iznimka događa ako nemamo pristup navedenom razred .

Jednom kada se pobrinemo za ove iznimke, dobro je krenuti.

class ObjectCreation {String FirstString = 'Hello World' public static void main (String [] args) {try {Class Message = Class.forName ('ObjectCreation') ObjectCreation obj = (ObjectCreation) Message.newInstance () System.out.println (obj.FirstString)} catch (ClassNotFoundException e) {e.printStackTrace ()} catch (InstantiationException e) {e.printStackTrace ()} catch (IllegalAccessException e) {e.printStackTrace ()}}}

Izlaz- Pozdrav svijete

ssis tutorial za početnike 2012 s primjerima

Stvaranje objekata pomoću deserializacije

U Javi se serializacija koristi za pretvaranje trenutnog stanja objekta u tok bajtova. deserializacija je upravo suprotna jer objekt ponovno stvaramo pomoću bajt toka. Za postupak serializacije moramo implementirati sučelje koje se može serirati. Iznimka Rukovanje se vrši za stvaranje objekata pomoću ove metode.

ObjectInputStream objectInputStream = novi ObjectInputStream (inputStream) Ime klase object = (ime klase) objectInputStream.readObject ()

Stvaranje objekata pomoću metode newInstance () klase Constructor

Vidjeli smo metodu newInstance klase Class koju smo koristili za stvaranje objekta. Slično tome, konstruktor klase također se sastoji od metode newInstance () koja se može koristiti za stvaranje objekata. Ostali mogu zadani konstruktori uz pomoć ove metode koju također možemo nazvati parametarski konstruktori .

import java.lang.reflect. * public class ObjectCreation {private String FirstString = 'Hello World' ObjectCreation () {} public void changeMessage (String message) {this.FirstString = message} public static void main (String [] args) { pokušajte {Constructor constructor = ObjectCreation.class.getDeclaredConstructor () ObjectCreation objectCreation = constructor.newInstance () objectCreation.changeMessage ('Dobro došli u svijet programiranja') System.out.println (objectCreation.FirstString)} catch (Izuzetak e) { e.printStackTrace ()}}}

Izlaz-

Dobrodošli u svijet programiranja

Ovo je 5 različitih načina stvaranja predmeta u neke se koriste češće od drugih. Svaka metoda ima svoje prednosti i nedostatke. Na kraju, izbor je na vama.

Java je zanimljiv jezik, ali postaje zamršen ako osnove nisu jasne. Za početak, vaše učenje i savladavanje svih vještina povezanih s java tehnologijom upišite se na i oslobodite Java programera u sebi.

Imate pitanje za nas? molimo vas da to spomenete u odjeljku za komentare ovog članka o „objektima na Javi“ i javit ćemo vam se što je prije moguće.