Esimerkki Java: sta - Työskentely ja Java-esimerkkisääntöjen esimerkit

Sisällysluettelo:

Anonim

Johdanto Java-esimerkissä

instanceOf on Java-ohjelmointikielen luokka, joka soitettaessa palauttaa boolean-arvon ja sitä käytetään tutkimaan objektin ja luokan / käyttöliittymän välistä suhdetta. Koska se kykenee vertaamaan näitä kahta, se tunnetaan myös nimellä "tyypin vertailun operaattori". Yksinkertaisesti, EsimerkkiO: ta käytetään tarkistamaan onko objekti minkä tyyppinen vai ei, ja se palauttaa boolen arvon, joka on joko tosi vai epätosi. EsimerkkiOf on yksi hyödyllisistä Java-operaattoreista, joka auttaa hankkimaan hyödyllistä tietoa objektista ajonaikaisessa ympäristössä.

Syntaksi:

EsimerkkiOf-luokkaa käytetään tarkistamaan, onko objekti jossain luokassa vai ei.

obj instanceOf object

Yllä on vakio syntaksi esim. Class. Täällä obj on sen objektin nimi, joka on luotu aikaisemmin (viite). instanceOf on avainsana ja objekti on luokka tai käyttöliittymä, jonka kanssa sovitamme obj-objektin.

Useissa tapauksissa instanceOf voidaan osoittaa olevan erittäin hyödyllinen, kuten missä meillä on kokoelma esineitä etkä ole varma mihin esineeseen se viittaa. Esimerkki tällaisesta tapauksesta voi olla yksinkertainen muoto, jossa on monia säätimiä.

Lisäksi, jos käytämme instanceOf-muuttujaa, jolla on NULL-arvo, se varmasti palauttaa väärän.

Kuinka esimerkki toimii?

Java-operaattorin instanceOf työskentelee yksinkertaisen is-suhteen avulla. Yksinkertaisesti sanottuna, suhde on oliokeskeinen käsite, jossa vertaamme tai sanomme, että työskentelemme abstraktioiden välisessä suhteessa, missä luokka A on luokan B alaluokka. Tämä on suhde, joka perustuu täysin perintöön. Toisin sanoen, se on kuin sanominen: “X on Y-tyyppi”.

Ymmärretään nyt instanceOf: n toiminta vastaavan koodin kanssa.

Ensin luomme luokan nimeltä Vanhempi.

Koodi:

Class Parent(
)
Then let's add a simple main class.
public static void main(String args()) (
)

Sitten luomme esimerkki vanhempien luokasta.

Parent child = new Parent();

Viimeinkin, tarkistamme lapsen ja vanhemman välisen suhteen operaattorin instanssin instanssin. Mikä menee näin: lapsen esimerkki Vanhemmalle

Nyt, kuten aikaisemmin mainittiin, esimerkinOf syntaksi menee tarkistettavalta objektilta, sitten avainsanan instanceOf ja sitten luokka / rajapinta, jonka kanssa annettava objekti testataan.

Missä tahansa kohtaa luokan ilmoituksessa avainsanan "laajenee" tai "työväline" kanssa, se on selvä merkki siitä, että suhde on käytössä.

Esimerkkejä Java-esiintymistä

Seuraava esimerkki osoittaa instanOf: n yhden rivin käytön.

Class instanceof_java(
public static void main(String args()) (
instanceof_java s = new instanceof_java();
System.out.println(s instanceOf instanceof_java);
)
)

Kooditulkinta: Aluksi luotiin yksinkertainen luokan instanssi_java. Luokan instanssissa_java, meillä on pääluokka ja pääluokassamme olemme luoneet objektin. Tämä objekti s on instanof_java-tyyppi. Sitten toimittaaksesi instanceOf: n toiminnan, toimitimme tulosteen käskyn objektilla s. Viimeisellä rivillä ohitimme s yhdessä avainsanan instanssin ja vanhemman luokan kanssa. Suoritettuaan koodi palaa 'tosi', koska objekti s on esiintyyppinen.

Edelleen, jos meillä on tunnetun luokan tai käyttöliittymän esine, mutta emme ole määritelleet arvoa samalle objektille, se palauttaa väärän, vaikka olisikin sama luokka.

Class instanceof_sample(
public static void main(String args()) (
instanceof_sample new = null;
System.out.println(new instanceOf instanceof_sample);
)
)

Täällä meillä on samanlainen koodi kuin aikaisemmassa esimerkissä, mutta nolla-arvoisella objektilla. Kun koodi suoritetaan, tämä koodi palaa väärin. Kuten voimme nähdä, uusi objekti on esimerkki esimerkistä_esimerkki, mutta uudelle on annettu nolla-arvo, joka palauttaa väärän.

Säännöt esimerkiksi Operaattorille

Perustuu siihen, ref ei ole nolla, ja mainitun tyyppinen ilmentymä. Kun X on tarkoitetun kohteen yksinkertainen luokka ja Y on ratkaistu luokka tai rajapintatyypin ryhmä.

  • Kun X on yksinkertainen luokka, niin:
  • Jos Y on luokkatyyppi, niin X: n on oltava Y: n alaluokka tai X: n on oltava sama luokka kuin Y.
  • Jos Y on rajapintatyyppi, niin X-luokan on toteutettava rajapinta T.
  • Kun X on tyyppinen käyttöliittymä, niin:
  • Jos Y on luokkatyyppi, Y: n on oltava objekti.
  • Y voi olla sama kuin rajapinta kuin X tai X: n superrajapinta, jos Y on rajapinnan tyyppi.
  • Jos X on luokka, joka edustaa taulukotyyppiä SC (), joka on ryhmä tyyppisiä SC komponentteja, niin:
  • Jos Y on luokkatyyppi, Y: n on oltava objekti.
  • Jos Y on liittymätyyppi, niin Y: n on oltava taulukkojen toteuttamaa rajapintatyyppiä.

Lopuksi osoitamme ohjelman esiintymän ohjelman ymmärtääksemme, että vanhemmiobjekti ei voi olla lasten luokan esimerkki.

Ohjelmoida

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");
)
)

Kooditulkinta: Jotta ymmärrämme instanssioperaattoria eri tilanteissa, kirjoitimme yllä olevan koodin. Loimme yksinkertaisen luokan Aiheen ja sitten toisen luokka Aiheen, joka laajentaa luokan Aihetta, joten luokan Aihe lapsena ja luokan Aihe vanhempana. Sitten toinen luokka päämenetelmällä. Päämenetelmän puitteissa loimme uuden vanhemman luokan Aiheen esiintymän. IF ELSE -silmukassa tarkistimme ilmentymiobjektin kunnon pääluokan Aihe kanssa. Jos ehto täyttyy, se palauttaa sanan "historia on aiheen esimerkki" ja "historia EI ole aiheen esimerkki", jos ehto epäonnistuu.

Edellä mainitun koodin suorittamisen jälkeen tulos on ”historia EI ole aiheen esiintymää”, mikä tarkoittaa, että IF: ssä läpikäynyt ehto epäonnistuu. Se tapahtui, koska yritimme tarkistaa kohteen "historia" vanhemman luokan Aihe-aiheella. Tiedämme, että luokka Aihe laajentaa luokan Aihetta, mikä tarkoittaa, että Aihe on alaluokka Aiheeseen. Ja kun yritimme tarkistaa historian tyyppiä luokan Aiheella, se antaa väärän (EI). Tämä tarkoittaa, että emoobjekti ei voi olla luokan esiintymä.

lähtö:

Johtopäätös - esimerkki Java

Olemme oppineet Java-sovelluksen instanceOf-luokasta, joka yksinkertaisesti päättää onko objekti tietyn tyyppinen. Ymmärsimme kuinka suhde vaikuttaa operaattoriin. Tunnetaan myös vertailuoperaattorina, instanceOf perustuu perintöön.

Suositellut artikkelit

Tämä on opas JavaScriptiä varten. Tässä keskustellaan siitä, kuinka Java-palvelun instanssi toimii, koodin tulkinnan sääntöjen kanssa. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Java-avainsanat
  2. Java-merkinnät
  3. Huijata Sheet JavaScript
  4. PHP-avainsanat