Introducere în instanțăOf în Java
instanOf este o clasă de limbaj de programare Java, care, atunci când este numită, returnează valoarea booleană și este utilizată pentru a examina relația dintre obiect și o clasă / interfață. Datorită capacității sale de a compara aceste două, este cunoscut și ca „operator de comparare de tip”. Pur și simplu, instanțaOf este folosită pentru a verifica dacă un obiect este de orice tip sau nu, și returnează o valoare booleană care este adevărată sau falsă. InstanceOf este unul dintre operatorii de ajutor din Java, care ajută la obținerea de informații utile despre un obiect, într-un mediu de rulare.
Sintaxă:
Clasa instanOf este utilizată pentru a verifica dacă obiectul este sau nu dintr-o clasă.
obj instanceOf object
Mai sus este sintaxa standard pentru clasa instanceOf. Aici, obiectul este numele obiectului care trebuie să fi fost creat anterior (referință). instanOf este cuvântul cheie, iar obiectul este clasa sau interfața cu care ne potrivim obiectul obj.
În diferite cazuri, instanța Of se poate dovedi a fi de mare folos, cum ar fi în cazul în care avem o colecție de obiecte și nu sunteți sigur la ce obiect se referă. Un exemplu de astfel de caz poate fi o formă simplă cu multe controale.
De asemenea, dacă în cazul în care folosim instanceOf cu o variabilă care are o valoare NULL, este sigur că va reveni fals.
Cum funcționează instanța?
Operatorul instanOf din Java funcționează pe o relație simplă este-o relație. Pur și simplu afirmând, este-o relație este un concept orientat pe obiecte, în care comparăm sau spunem, lucrăm pe o relație între abstracții, unde clasa A este o subclasă a clasei B. Aceasta este-o relație bazată pe moștenire. Cu alte cuvinte, este ca și cum ai spune „X este de tip Y”.
Acum, haideți să înțelegem funcționarea instanțeiO, împreună cu codul respectiv.
În primul rând, vom crea o clasă numită părinte.
Cod:
Class Parent(
)
Then let's add a simple main class.
public static void main(String args()) (
)
Vom crea apoi o instanță a clasei noastre de părinți.
Parent child = new Parent();
În cele din urmă, vom folosi operatorul instanță pentru a verifica relația dintre copil și părinte. Ceea ce se întâmplă astfel: instanță copilOf părinte
Acum, așa cum am menționat anterior, sintaxa pentru instanceOf pleacă de la un obiect care trebuie să verifice, apoi cuvântul cheie instanOf și apoi clasa / interfața cu care obiectul dat trebuie testat.
În orice punct în care ne întâlnim cu cuvântul cheie „se extinde” sau „pune în aplicare”, într-o declarație de clasă, este un semn clar că este o relație utilizată.
Exemple de instanțăOf în Java
Următorul exemplu demonstrează utilizarea unei linii instantOf.
Class instanceof_java(
public static void main(String args()) (
instanceof_java s = new instanceof_java();
System.out.println(s instanceOf instanceof_java);
)
)
Interpretarea codului: a început cu crearea unei instanțe de clasă simple de_java. În clasa instanceof_java, avem clasa noastră principală și în cadrul clasei principale, avem un obiect creat. Acest obiect este de tip instanceof_java. Apoi, pentru a implementa funcția instanOf, am furnizat o declarație de ieșire cu obiectele s. În ultima linie, am trecut s împreună cu cuvântul cheie instanof și clasa părinte. După executare, codul va returna „adevărat”, deoarece obiectul este de tipul instanței.
Mergând mai departe, dacă avem un obiect al clasei sau interfeței noastre cunoscute, dar nu am atribuit nicio valoare aceluiași obiect, este obligat să returneze fals, chiar dacă este din aceeași clasă.
Class instanceof_sample(
public static void main(String args()) (
instanceof_sample new = null;
System.out.println(new instanceOf instanceof_sample);
)
)
Aici avem cod similar cum am avut de exemplu anterior, dar cu obiect de valoare nulă. Când este executat, acest cod va returna fals. După cum putem vedea, obiectul nou este instanța instanof_sample, dar nou este atribuit cu o valoare nulă, care revine în fals.
Reguli pentru exemplu Operatorul
Pe baza dacă obiectul ref nu este nul și o instanță de tipul menționat. Când X este clasa simplă a obiectului referit și Y este clasa rezolvată sau un tablou de tip interfață.
- Când X este o clasă simplă, atunci:
- Dacă Y este un tip de clasă, atunci X trebuie să fie o subclasă a lui Y sau X trebuie să aibă aceeași clasă ca Y.
- Dacă Y este un tip de interfață, atunci clasa X trebuie să implementeze interfața T.
- Când X este interfață de tip, atunci:
- Dacă Y este un tip de clasă, atunci Y trebuie să fie un obiect.
- Y poate fi la fel cu interfața ca X sau super interfața X dacă Y este un tip de interfață.
- Dacă X este o clasă, care reprezintă tipul SC (), care este un tablou de componente SC de tip, atunci:
- Dacă Y este un tip de clasă, atunci Y trebuie să fie un obiect.
- Dacă Y este un tip de interfață, atunci Y trebuie să fie de tipul interfeței implementat de tablouri.
În cele din urmă, vom demonstra un program instanceOf pentru a înțelege că obiectul părinte nu poate fi o instanță a clasei copil.
Program
class Subject ( )
class Topic extends Subject ( )
class instanceof_java
(
public static void main(String() args)
(
Subject history = new Subject ();
if (history instanceof Topic)
System.out.println("history is instance of Topic");
else
System.out.println("history is NOT instance of Topic");
)
)
Interpretarea codului: În scopul înțelegerii operatorului instanță în diferite scenarii, am scris codul de mai sus. Am creat un subiect de clasă simplă, apoi o altă temă de clasă, care extinde clasa Subiect, făcând clasa Subiect ca copil și clasa Subiect ca Părinte aici. Apoi o altă clasă cu metoda principală. În cadrul metodei principale, am creat o nouă instanță a clasei părinte Subiect. În bucla IF ELSE, am verificat starea obiectului instanță cu clasa părinte Subiect. Dacă condiția ar fi îndeplinită, aceasta ar întoarce „istoria este o instanță a subiectului” și „istoria NU este o instanță a subiectului” dacă condiția eșuează.
La executarea codului de mai sus, rezultatul va fi „Istoric NU este o instanță a subiectului”, adică condiția transmisă în IF eșuează. S-a întâmplat pentru că am încercat să verificăm „istoricul” părintelui obiectului cu clasa Subiect. Știm că clasa Subiect extinde clasa Subiect, adică Subiectul este subclasa Subiect. Și când am încercat să verificăm tipul de istoric cu clasa Subiect, acesta returnează fals (NU). Aceasta înseamnă că obiectul părinte nu poate fi o instanță a unei clase.
ieşire:
Concluzie- instanțăOf în Java
Am aflat despre clasa instanceOf din Java, care pur și simplu decide dacă obiectul este de tipul dat. Am înțeles cum afectează o relație asupra operatorului instanță. Cunoscut și ca operator de comparație, instanța OF se bazează pe moștenire.
Articole recomandate
Acesta a fost un ghid pentru InstanceOf în Java. Aici vom discuta despre modul în care funcționează InstanceOf în Java, reguli cu Interpretarea codului. De asemenea, puteți arunca o privire la următoarele articole pentru a afla mai multe -
- Cuvinte cheie Java
- Adnotări Java
- Fisa Cheat JavaScript
- Cuvinte cheie PHP