Računalniki Windows Internet

Pogojne konstrukcije. Stran strežnika Java. Sintaksa strani JSP

Strani JSP imajo kombinirano skladnjo: kombinacijo standardne skladnje, kot je opredeljena s specifikacijo HTML, in sintakso JSP, kot je opredeljena s specifikacijo Strežnik Java Strani. Sintaksa JSP opredeljuje pravila za pisanje strani JSP, sestavljenih iz standardnih oznak HTML in oznak JSP.

Strani JSP poleg oznak HTML vsebujejo oznake JSP naslednjih kategorij:

Direktive JSP

Direktive JSP zagotoviti globalne informacije o posebnih zahtevah, poslanih strežniku, in zagotoviti informacije, potrebne v fazi prevajanja. Direktive so vedno postavljene na začetku strani JSP pred vsemi drugimi oznakami, tako da razčlenjevalnik(razčlenjevalnik) JSP je pri razčlenjevanju besedila na samem začetku izpostavil globalna navodila. Tako mehanizem JSP (čas izvajanja JSP) razčlenjuje kodo in ustvari strežniški programček iz JSP. Direktive so sporočila v vsebnik JSP.

Sintaksa Direktive JSP kot sledi:

<%@ директива имяАтрибута="значение" %>

Sintaksa opravila direktivah v XML:

Direktiva JSP ima lahko več atributov. V tem primeru se lahko direktiva za vsak atribut ponovi. Hkrati parov "AttributeName = value" se lahko nahaja pod eno direktivo s presledkom kot ločevalnikom.

Obstajajo tri vrste direktiv:

  • stran (stran)
  • taglib (knjižnica oznak)
  • vključi (vključi)

Direktiva o strani JSP

Direktiva o strani JSP definira lastnosti strani JSP, ki vplivajo na prevajalca. Vrstni red atributov v direktivi stran ni pomembno. Kršitev skladnje ali prisotnost neprepoznanih atributov povzroči napako pri prevodu. Primer direktive stran lahko služi naslednja koda:

<%@ page buffer="none" isThreadSafe="yes" errorPage="/error.jsp" %>

Direktiva o strani to izjavlja to stran JSP ne uporablja medpomnilnika, kar omogoča hkraten dostop do danega Stran JSP veliko uporabnikov in to stran z napako z imenom error.jsp.

Direktiva o strani JSP lahko vsebuje podatke o strani:

<%@ page info = "JSP Sample 1" %>

Seznam možnih atributov direktive stran predstavljene v tabeli.

Ime atributaPomen Opis
jezik Linija Določa jezik, ki se uporablja v skriptnih datotekah JSP, izrazih ali kateri koli datoteki za vključitev, vključno s telesom prevedene kode. Privzeto je "java"
podaljša Linija Podaja nadrazred za ustvarjeni strežniški programček. Ta atribut je treba uporabljati zelo previdno, saj je možno, da strežnik že uporablja superrazred.
uvoz Linija Opredelitev paketov za uvoz, na primer:
<%@ page import="java.util.* %>
Seja pravilno ali napačno Pomen prav(privzeto) označuje, da je vnaprej določena spremenljivka sejo(tip HttpSession) mora biti vezan na obstoječo sejo, če obstaja, sicer se ustvari nova seja in se nanjo poveže. Pomen napačno ugotavlja, da seje ne bodo uporabljale, in poskuša dostopati do spremenljivke sejo bo pri prevajanju strani JSP v strežniški programček povzročila napako
Pufer nič ali velikost pufra v kB. Nastavi velikost medpomnilnika za JspWriter. Privzeta vrednost je odvisna od nastavitev strežnika in ne sme presegati 8 kB. Če je vrednost nobena izhod gre neposredno na objekt ServletResponse
samodejno izpiranje pravilno ali napačno Določa, ali naj se medpomnilnik samodejno izprazni, če pride do napake. Privzeto je prav
isThreadSafe pravilno ali napačno Pomen prav(privzeto) podaja običajen način izvajanja strežniškega programčka, kjer se hkrati z enim primerkom strežniškega programčka obdeluje več zahtev hkrati, ob predpostavki, da ima avtor sinhroniziran dostop do spremenljivk tega primerka. Lažna vrednost signalizira, da mora servlet podedovati SingleThreadModel(enonitni model), kjer zaporedne ali sočasne zahteve obravnavajo ločeni primerki strežniškega programčka
info Linija Določa niz informacij o strani JSP, do katerih bo dostopen po metodi Servlet.getServletInfo ()
errorPage Linija Vrednost atributa je URL strani, ki ga je treba prikazati v primeru možnih napak, ki povzročajo izjeme
isErrorPage pravilno ali napačno Označuje, ali je to stran mogoče uporabiti za obravnavo napak na drugih straneh JSP. Privzeto je napačno
contentType Linija Podaja kodiranje za stran JSP in odziv ter vrsto MIME odgovora JSP. Privzeta vrednost vrste vsebine je besedilo / html, kodiranja - ISO-8859-1. Na primer:
contentType = "text / html; charset = ISO-8859-1"
pageEncoding Linija Določa kodiranje znakov strani JSP. Privzeto je charset iz atributa contentTypeče je tam definirano. Če je vrednost charset v atributu contentType nedefinirano, vrednost pageEncoding je nastavljeno enako ISO-8859-1

Direktiva JSP o taglibih

Direktiva JSP taglib izjavlja, da dana stran JSP uporablja knjižnico oznak, jo edinstveno identificira z URI in preslika predpono oznake, s katero je mogoče uporabiti knjižnico. Če vsebnik ne najde knjižnice oznak, pride do usodne napake pri prevodu.

Direktivo taglib ima naslednjo sintakso:

<%@ taglib uri="URI vključene knjižnice oznak"predpona =" ime predpone" %>

Predpona " ime predpone"se uporablja pri sklicevanju na knjižnico. Primer uporabe knjižnice oznak mytags:

<%@ taglib uri="http://www.taglib/mytags" prefix="customs" %> . . .

V tem primeru ima knjižnica oznak URI "http: //www.taglib/mytags", je niz dodeljen kot predpona običaji ki se uporablja na strani JSP pri dostopu do elementov knjižnice oznak.

JSP vključujejo direktivo

Direktiva JSP vključujejo omogoča vstavljanje besedila ali kode med prevajanjem strani JSP v strežniški programček. Sintaksa direktive vključujejo izgleda takole:

<%@ include file="Relativni URI strani, ki jo želite vključiti" %>

Direktivo vključujejo ima en atribut - mapa... Vključuje besedilo navedenega vira v datoteki JSP. To direktivo lahko uporabite za postavitev standardne glave avtorskih pravic na vsako stran JSP:

<%@ include file="copyright.html" %>

Vsebnik JSP dostopa do datoteke include. Če se je datoteka za vključitev spremenila, lahko vsebnik ponovno prevede stran JSP. Direktivo vključujejo obravnava vir, kot je stran JSP, kot statičen objekt.

Podatki URI se običajno razlagajo glede na JSP strani, na kateri je povezava, toda tako kot pri vsakem relativnem URI lahko sistemu poveste položaj vira, ki vas zanima, glede na domači imenik strežnika WEB s predpono URI z znakom "/". Vsebina datoteke include je obravnavana kot navadno besedilo JSP in lahko zato vključuje elemente, kot so statični HTML, elementi skripta, direktive in dejanja.

Mnoga spletna mesta uporabljajo majhno navigacijsko vrstico na vsaki strani. Zaradi težav pri uporabi okvirjev HTML se ta naloga pogosto reši tako, da se na vrh ali v levo polovico strani postavi majhna miza, katere koda HTML se večkrat ponovi za vsako stran spletnega mesta. Direktivo vključujejo- to je najbolj naraven način za rešitev te težave, ki razvijalca rešuje pred nočno moro rutine kopiranja HTML -ja v vsako ločeno datoteko.

Od direktive vključujejo vključuje datoteke med prevajanjem strani, potem pa je po spremembah navigacijske vrstice potreben ponovni prevod vseh strani JSP z njeno uporabo. Če se priložene datoteke pogosto spreminjajo, lahko uporabite dejanje jsp: vključi ki povezuje datoteko pri dostopu do strani JSP.

Direktiva o izjavah JSP

Direktiva JSP izjave so namenjene opredelitvi spremenljivk in metod v skriptnem jeziku, ki se kasneje uporabijo na strani JSP. Sintaksa izjave izgleda takole:

<%! код Java %>

izjave se nahajajo v bloku deklaracij in se kličejo v bloku izrazov strani JSP. Koda v deklaracijskem bloku je običajno napisana v Javi, vendar lahko aplikacijski strežniki uporabljajo sintakso drugih skriptov. oglasi se včasih uporabljajo za dodajanje dodatne funkcionalnosti pri delu z dinamičnimi podatki, pridobljenimi iz lastnosti komponent JavaBeans. Primeri oglasi so predstavljeni v tabeli.

Izjave lahko vsebuje več vrstic, na primer v spodnji kodi za izračun vrednosti funkcije dejstvo (int n), ki bi morala biti enaka 1, če je n manjše od 2 in n! s pozitivno vrednostjo n;

<%! public static int fact (int n) { if (n <= 1) return 1; else return n * fact (n - 1); } %>

izjave ne proizvajajo nobenega izhoda na standardni izhod ven... Spremenljivke in metode, deklarirane v deklaracijah, se inicializirajo in so na voljo skriptletjem in drugim oglasi v času inicializacije strani JSP.

Skripleti skriptov

skripte vključujejo različne kode, napisane v skriptnem jeziku, opredeljenem v direktivi jezik... Odlomki kode morajo biti v skladu s skladenjskimi konstrukcijami jezika skripte ponavadi skladnja jezika Java. skripte imajo naslednjo sintakso:

<% текст скриптлета %>

Ekvivalent sintakse skriptlet za XML je:

besedilo skripta

Če je v besedilu skriptlet zaporedje znakov%> je treba uporabiti natančno kot kombinacijo znakov in ne kot oznako - znak za konec skriptlet, namesto zaporedja%> uporabite naslednjo kombinacijo znakov% \>.

Specifikacija JSP ponuja preprost in jasen primer skriptlet ki dinamično spreminja vsebino strani JSP ves dan.

<% if (Calendar.getInstance ().get (Calendar.AM_PM) == Calendar.AM) {%>Dobro jutro<% } else { %>Dober večer<% } %>

Treba je opozoriti, da je koda v notranjosti skriptlet vstavljeno kot napisano in vse statično besedilo HTML (besedilo predloge) pred ali za njim skriptlet pretvori z operaterjem tiskanje... To pomeni, da skriptletkom ni treba vsebovati dokončanih kosov Java in da lahko odprti kosi vplivajo na statični HTML zunaj skriptlet.

Skripti imajo dostop do istih samodejno določenih spremenljivk kot izrazi. Če morate na primer na strani prikazati kakršne koli podatke, morate uporabiti spremenljivko ven.

<% String queryData = request.getQueryString (); out.println ("Дополнительные данные запроса: " + queryData); %>

Izrazi izrazi

Izrazi izrazi na strani JSP, izvedljiv izraz, napisan v skriptnem jeziku, navedenem v jezikovni deklaraciji (običajno Java). Rezultat izrazi JSP, ki je zahtevanega tipa String, se pošlje v standardni izhodni tok ven z uporabo trenutnega predmeta JspWriter... Če je rezultat izrazi ni mogoče oddati Vrvica, pride do napake pri prevodu, če je bila težava odkrita v fazi prevajanja, ali pride do izjeme ClassCastExceptionče je bila med izvajanjem zahteve ugotovljena nedoslednost. Izraz ima naslednjo sintakso:

<%= текст выражения %>

alternativna skladnja za JSP izrazi pri uporabi XML:

izrazno besedilo

Izvršni nalog izrazi na strani JSP od leve proti desni. Če izraz se pojavi v več atributih časa izvajanja, nato pa te oznake poteka od leve proti desni. Izraz mora biti popoln izraz v določenem skriptu (običajno Java).

izrazi se izvajajo med izvajanjem protokola HTTP. Vrednost izraza se pretvori v niz in vključi v ustrezno mesto v datoteki JSP.

Izrazi se običajno uporabljajo za izračun in prikaz nizov predstavitev spremenljivk in metod, opredeljenih v bloku deklaracije strani JSP ali izpeljanih iz JavaBean, do katerih je dostopen JSP. Naslednja koda izrazi služi za prikaz datuma in časa zahteve strani:

Trenutni čas:<%= new java.util.Date () %>

Za poenostavitev izrazi obstaja več vnaprej določenih spremenljivk, ki jih lahko uporabite. Najpogosteje uporabljene spremenljivke so:

  • request, HttpServletRequest;
  • odgovor, HttpServletResponse;
  • seja, HttpSession - povezana z zahtevo, če obstaja;
  • ven, PrintWriter - pufrirano različico vrste JspWriter za pošiljanje podatkov odjemalcu.

Eden od temeljnih elementov mnogih programskih jezikov je pogojne konstrukcije... Te konstrukcije vam omogočajo, da delo programa usmerite po eni od poti, odvisno od določenih pogojev.

Jezik Java uporablja naslednje pogoje: if..else in switch..case

Če / drugače konstruiraj

Izraz if / else preveri resničnost določenega pogoja in glede na rezultate testa izvede določeno kodo:

Int num1 = 6; int num2 = 4; if (num1> num2) (System.out.println ("Prva številka je večja od druge");)

Pogoj je postavljen za ključno besedo if. In če je ta pogoj izpolnjen, potem koda, ki je postavljena naprej v blok if po sprožitvi kodrastih zavihkov. Operacija primerjave dveh števil deluje kot pogoj.

Ker je v tem primeru prva številka večja od druge, je izraz num1> num2 resničen in vrne true. Posledično krmiljenje preide v blok kode po zavitih oklepajih in začne izvajati navodila, ki jih vsebuje, zlasti metodo System.out.println ("Prva številka je večja od druge"); ... Če bi bila prva številka manjša ali enaka drugi, potem stavki v bloku if ne bi bili izvedeni.

Kaj pa, če želimo, da se ukrepi izvedejo, če pogoj ni izpolnjen? V tem primeru lahko dodamo še en blok:

Int num1 = 6; int num2 = 4; if (num1> num2) (System.out.println ("Prva številka je večja od druge");) else (System.out.println ("Prva številka je manjša od druge");

Int num1 = 6; int num2 = 8; if (num1> num2) (System.out.println ("Prva številka je večja od druge");) else if (num1

Z logičnimi operaterji lahko hkrati združimo tudi več pogojev:

Int num1 = 8; int num2 = 6; if (num1> num2 && num1> 7) (System.out.println ("Prva številka je večja od druge in večja od 7");)

Tu bo blok if izveden, če je num1> num2 res, hkrati pa je num1> 7 res.

Preklopite konstrukcijo

Oblikovanje stikalo / etui je podoben konstrukciji if / else, saj vam omogoča obdelavo več pogojev hkrati:

Int num = 8; switch (num) (primer 1: System.out.println ("številka je 1"); prelom; primer 8: System.out.println ("število je 8"); num ++; break; primer 9: System. out. println ("številka je 9"); prelom; privzeto: System.out.println ("številka ni 1, 8, 9");)

Izraz za primerjavo sledi ključni besedi switch v oklepaju. Vrednost tega izraza se zaporedno primerja z vrednostmi po operatorju velikih črk. In če se najde ujemanje, se izvede poseben blok velikih črk.

Stavek break je postavljen na konec bloka velikih črk, da se izogne ​​izvedbi drugih blokov. Na primer, če je bil stavek break odstranjen v naslednjem primeru:

Primer 8: System.out.println ("številka je 8"); število ++; primer 9: System.out.println ("številka je 9"); prekiniti;

potem, ker je naša spremenljivka num enaka 8, bi bil izveden blok primera 8, ker pa se v tem bloku spremenljivka num poveča za eno, ni stavka break, bi se blok primera 9 začel izvajati.

Če želimo tudi obravnavati situacijo, ko ni najdenega ujemanja, lahko dodamo privzeti blok, kot v zgornjem primeru. Privzeti blok pa ni obvezen.

Začenši z JDK 7, lahko v izrazu switch..case poleg primitivnih tipov uporabite tudi nize:

Paket firstapp; uvoz java.util.Scanner; javni razred FirstApp (javni statični void main (String args) (Scanner in = new Scanner (System.in); System.out.println ("Enter Y or N:"); String input = in.nextLine (); switch ( vnos) (velika črka "Y": System.out.println ("pritisnili ste črko Y"); prelom; velika črka "N": System.out.println ("pritisnili ste črko N"); prelom; privzeto: sistem .out .println ("Pritisnili ste neznano črko");)))

Ternarna operacija

Trojna operacija ima naslednjo skladnjo: [prvi operand je pogoj]? [drugi operand]: [tretji operand]. Tako so v to operacijo vključeni trije operandi hkrati. Odvisno od pogoja, trojna operacija vrne drugi ali tretji operand: če je pogoj resničen, se vrne drugi operand; če je pogoj napačen, potem tretji. Na primer:

Int x = 3; int y = 2; int z = x

Tu je rezultat trojnega delovanja spremenljivka z. Prvič, pogoj x

Ko pogledamo program java, ga lahko opredelimo kot zbirko predmetov, ki medsebojno delujejo tako, da kličejo metode drug drugega. Zdaj pa na kratko razumejmo Java sintaksa kaj pomenijo razred, predmet, metode in spremenljivke primerkov.

Objekt- predmeti imajo stanje in vedenje. Na primer: pes ima lahko stanje - barvo, ime in vedenje - kimati, teči, lajati, jesti. Objekt je primerek razreda.

Razred- lahko definiramo kot predlogo, ki opisuje vedenje predmeta.

Metoda- je predvsem vedenje. Razred lahko vsebuje več metod. Z metodami se manipulira in izvaja logično zabeležene podatke.

Spremenljivke primerkov- vsak predmet ima svoj edinstven nabor spremenljivk primerka. Stanje predmeta ustvarjajo vrednosti, dodeljene tem spremenljivkam primerka.

Prvi program in poznavanje sintakse jezika

Oglejmo si preprosto kodo, ki bo prikazala besede "Hello world!" In, na primer, skladnjo Java.

Javni razred MyFirstJavaProgram (javni statični void main (String args) ( / * To je moj prvi program java. Izvedba bo prikazala "Hello world!" * / System.out.println ("Hello world!"); / / Prikaz sporočila na zaslonu))

  • Odprite beležnico in dodajte zgornjo kodo.
  • Shranite datoteko kot "MyFirstJavaProgram.java". Spodaj bomo pogledali sintakso Java in ugotovili, zakaj pod tem imenom.
  • Odprite okno ukaznega poziva in se pomaknite v imenik, v katerem je bila datoteka shranjena. Predpostavimo, da je "C: \".
  • Vnesite "Javac MyFirstJavaProgram.java" in pritisnite enter, da sestavite kodo. Če v kodi ni napake, vas ukazna vrstica pripelje do naslednje vrstice: (Predpostavka: spremenljivka poti je nastavljena).
  • Zdaj vnesite "java MyFirstJavaProgram", da zaženete program.
  • Zdaj boste videli »Hello World!« Natisnjeno v oknu.
C:> javac MyFirstJavaProgram.java C:> java MyFirstJavaProgram Pozdravljeni svet!

Osnove sintakse Java

Zelo pomembno je vedeti in zapomniti naslednje točke v skladnji:

  • Občutljivost velikih in malih črk - Java razlikuje velike in male črke, kar pomeni, da ima Hello in hello različne pomene.
  • Imena razredov - za vse mora biti prva črka velika.
  • Če se za ime razreda uporablja več besed, mora biti prva črka vsake notranje besede velika, na primer "MyJavaClass".
  • Imena metod - V sintaksi Jave se morajo vsa imena metod začeti z malimi črkami.
  • Če se za oblikovanje imena uporablja več besed, mora biti prva črka vsake notranje besede velika, na primer "public void myMethodName ()".
  • Ime programske datoteke - ime programske datoteke mora se natančno ujemajo z imenom razreda.
  • Ko shranjujete datoteko, jo morate shraniti z imenom razreda (ne pozabite na občutljivost na velike in male črke) in na koncu imena dodajte ".java" (če se imena ne ujemajo, se program ne bo prevedel), na primer " MyJavaProgram "je ime razreda, nato pa datoteko shranite kot" MyJavaProgram.java ".
  • public static void main (String args) - obdelava programa se začne z metodo Main (), ki je obvezen del vsakega programa.

Identifikatorji Java

Identifikatorji- imena razredov, spremenljivk in metod. Vse komponente Java zahtevajo imena.

V sintaksi Jave je treba zapomniti več o identifikatorju. Ti so naslednji:

  • Vsak identifikator se mora začeti z "A" do "Z" ali "a" do "z", "$" ali "_".
  • Vsaka kombinacija znakov je lahko za prvim znakom.
  • Ključne besede ni mogoče uporabiti kot identifikator.
  • Najpomembneje je, da identifikator v Javi razlikuje velike in male črke.
  • Primer pravilnega črkovanja: starost, $ plača, _value, __1_value.
  • Primer napačne črkovanja: 123abc, -plača.

Naštevanja

Številke so bile uvedene v Javi 5.0. Spremenljivko omejujejo, da izbere le eno od več vnaprej določenih vrednosti. Vrednosti na tem oštevilčenem seznamu so poklicane prenosi.

Z uporabo naštevanja v Javi lahko zmanjšate število napak v kodi.

Na primer, če ste v trgovini iskali naročila za svež sok, lahko omejite velikost pakiranja soka za majhne, ​​srednje in velike. To omogoča uporabo naštevanja v Javi, tako da nihče ne naroči drugih velikosti paketov, razen majhnih, srednjih ali velikih.

Primer kode naštevanja Java

razred FreshJuice (naštevanje FreshJuiceSize (SMALL, MEDIUM, LARGE) FreshJuiceSize size;) javni razred FreshJuiceTest (javna statična void main (String args) (FreshJuice juice = new FreshJuice (); juice.size = FreshJuice.FreshJuiceSize; .println ("Velikost:" + sok. velikost);))

Rezultat iz zgornjega primera:

Velikost: SREDNJA

Opomba: v Javi se lahko naštevanja razglasijo samostojno ali znotraj razreda. Metode, spremenljivke, konstruktorje je mogoče opredeliti tudi znotraj naštevanja.

Spremenljive vrste

  • Lokalne spremenljivke.
  • Razredne spremenljivke (statične).
  • Spremenljivke primerkov (dinamične).

Modifikatorji

Tako kot pri drugih jezikih lahko tudi v Javi z modifikatorji spremenite razrede, metode itd. Modifikatorji v Javi so razdeljeni v dve kategoriji:

  • Z dostopom: privzeto, javno, zaščiteno, zasebno.
  • Brez dostopa: končno, abstraktno, strogofp.

V naslednjem razdelku si bomo podrobneje ogledali modifikatorje razredov, modifikatorje metod in druge.

Niz

V Javi je matrika objekt, ki shranjuje več spremenljivk iste vrste. Vendar je sama matrika objekt. V naslednjih poglavjih bomo pogledali, kako ustvariti in napolniti matriko.

se mora nujno ujemati z imenom razreda, katerega glavna () metoda se pokliče ob zagonu računalnika Java.

  • Objekt - razred, iz katerega se podeduje vse objekti v Javi, vključno z matrikami in nizi ().
  • Specifikatorji dostopa so posamezni za vsakega člana (določeno pred izjavo).
  • Vsi člani razreda so privzeto odprti za področje uporabe paket... Privzeti obseg je križ med zasebnim in zaščitenim, glej.
  • Vsaka datoteka * .java lahko vsebuje samo en razred razglašen za javen in dostopen od zunaj.
  • Opredelitev in deklaracija razreda sta vedno v eni datoteki, prototipov v glave ni mogoče postaviti.
  • Kazalci manjkajo.
  • Vse spremenljivke razreda so dejansko sklice na objekte, ne na predmete same. Njihovo inicializacijo za uporabo je treba izvesti prek novega<конструктор-класса>(...) .
  • Na podlagi prejšnje točke - pri dodeljevanju ene spremenljivke objekta drugi se spremeni le referenca, ne pa tudi kopija predmeta.
  • Spremenljivke v funkciji se posredujejo po vrednosti, če je osnovne vrste(int, byte, long itd ...) ali po sklicu, če so predmeti.
  • Do javnih statičnih članov razreda dostopate prek operaterja dot. , in ne skozi ::, kar po mojem vnaša neko zunanjo zmedo.
  • Destruktorja ni, obstaja pa finalize ().
  • Finalize () ne smemo zamenjati z destruktorjem C ++. se pokliče finalize () samo zbiranje smeti, ki nima nič skupnega z objektom, ki izstopa iz področja uporabe, in z odsotnostjo vsaj enega sklica na ta predmet.
  • Zbiranje smeti lahko prisilite tako, da pokličete metodo Runtime.gc () za trenutni predmet Runtime ali statično metodo System.gc (). Sodeč po poskusih, sprostitev pomnilnika deluje samo v navideznem računalniku Java in se ne vrne, ko dodeljeni pomnilnik v OS, dokler se stroj ne konča.
  • Pri kodiranju v slogu Java funkcije vrnejo izjeme namesto vrnitve kode. sistemski napake ali napake v logiki virtualnega stroja. Zato je treba v bloku try (...) catch (...) (...), ki obravnava izjeme, izvesti veliko funkcij ali pa mora metoda, ki jih pokliče, izrecno navesti skozi izjeme seznam izjem, ki jih te funkcije, ki jih ne upravljajo, za obdelavo po njihovih metodah v nizu klicev.
  • Izjeme delimo na in.
  • Blok try (...) se lahko konča tudi z blokom final (...), ki se izvede ne glede na prisotnost / odsotnost izjem v prejšnjem bloku try (...). To je priročno uporabiti za izvajanje kakršnih koli zahtevanih dejanj, ne glede na rezultate izvajanja bloka kode, na primer za samodejno sprostitev vseh virov, dodeljenih v njem.
  • char ni enobajtni tip kot pri C / C ++, je 16-bitni tip, ki podpira unicode strune.
  • bool je v Javi znan kot boolean.
  • Pogojni konstrukti vzamejo samo logična vrsta spremenljivk ali izrazov. To pomeni, da je koda takšna:
    int a; ... dejanja na spremenljivki a ...; če) (...)
    Ni pravilno v smislu sintakse Java in se ne bo prevedel.
  • Konstante se razglasijo za končne in ne za const.
  • Vsi nizi so predmeti.
  • Tudi konstante niza (tako kot "any string const") so predmeti.
  • Za nize (razred String) je definiran samo en operator - +, združevanje.
  • Primerjavo nizov izvedemo z metodo bool equals () razreda String, na primer s1.equals (s2).
  • Vsebina objektov String je konstantna in ne pomeni spreminjanja posameznega elementa niza, to se naredi zaradi zmogljivosti. Če potrebujete take operacije, lahko uporabite razred StringBuffer.
  • Ko združite neinicializiran niz z nepraznim nizom, dobite null + prazen niz, na primer s + = "| niz"; bo enako "null | niz"
  • Nizki imajo spremenljivo dolžino javnega člana, strune nimajo namesto tega uporabljajo metodo length ().
  • Java ne podpirajo več dedovanja. Nekatere njegove funkcije se izvajajo prek "vmesnikov". Vmesniki podpirajo več izvedb "podedovanja" več vmesnikov v enem razredu in na splošno veliko (vmesnikov) do številnih (razredov) razmerij in obratno.
  • Vmesniki omogočajo ustvarjanje povezav, prek katerih se lahko sklicujete na predmete razredov, ki izvajajo te vmesnike. Res je, da dinamično iskanje ustrezne metode pri dostopu prek referenčnega vmesnika zahteva veliko stroškov, zato ni zaželeno.
  • Namesto naštevanj lahko uporabite vmesnike brez deklaracij metod. V tem primeru morajo biti vse spremenljivke vmesnika inicializirane, ko je vmesnik definiran, njihove vrednosti pa bodo samodejno konstantne. Po tem jih je mogoče prek priključkov "povezati" z definiranim razredom.
  • Tudi od JDK 5 obstajajo navzven klasična naštevanja - enum. Pravzaprav to ni le seznam imenovanih konstant, ampak poseben razred, podedovan iz nadrazreda Enum. Vsak element naštevanja je predmet tega razreda. Številčno vrednost predmeta naštevanja lahko dobite z vgrajeno funkcijo ordinal.
  • Po meri preobremenitev operaterja znano v C ++, v Javi ne podpira.
  • Za delo v okolju objektov s "primitivnimi tipi" (int, float, char itd ...) uporablja Java autobox / autobox v vrste ovojev (Integer, Float, Character itd ...). Pravzaprav je to izvedba preobremenitve operaterja za več vgrajenih razredov, ki izvajajo funkcionalnost primitivnih tipov + metod objektov.
  • super - ključna beseda, ki omogoča klic konstruktorja nadrazreda iz podrazreda ali sklicevanje na člana nadrazreda, ki ga skrije član podrazreda.
    • Ko se uporablja kot konstruktor - super vedno mora biti prvi operator v konstruktorju podrazreda.
  • Za določitev abstraktno metode, se uporablja abstraktna ključna beseda, razred, ki vsebuje abstraktno metodo, je treba opredeliti tudi kot abstraktni razred ....
  • dokončno prepoveduje prevladujoče metode v razredih otrok. Za "kratke" metode, ki so razglašene za dokončne, ima ta ključna beseda enak učinek kot inline v C ++ - v podrazredih, namesto da kliče funkcijo. lahko v kodo metode klicnega razreda je vstavil bajtkodo metode superklasa.
  • final prepoveduje tudi dedovanje iz razreda, ki je razglašen za končnega.
  • Imenski prostori(imenski prostor) v Javi se izvajajo kot paketov(paket).
  • Povezati paketov uporabite import, lahko uporabite tudi uvoz static ..(*|) za uvoz statičnih članov razreda.
  • Java podpira niti prek vgrajenega razreda Thread in vmesnika Runable. Za sinhronizacijo uporabite sinhronizirani podajalnik pred metodo v opisu razreda ali sinhronizirano ( ) (...) za niz kode, sinhroniziran z ... Za signale med sinhroniziranimi nitmi se uporabljajo metode nadrejenega razreda Object: wait () / notify () / notifyAll ().
  • prehodno - modifikator, ki označuje, da vrednosti predmeta / spremenljivke ni treba "držati" pri shranjevanju predmeta, na primer pri serializaciji pred zapisom na disk / bazo podatkov. Na ta način je logično označiti spremenljivke, ki vsebujejo edinstvene identifikatorje časa izvajanja in druge podobne informacije, ki so smiselne le v trenutnem primerku procesa java.
  • instanceof - čas izvajanja, vračila pravče obstaja povezava do razreda , ali pa se lahko drugače sklicuje na sklic na ta razred napačno.
  • assert - Trditve Java se uporabljajo na enak način kot v C: assert [: Opis napake trditve], vendar imeti v mislih da so "vdelane" v prevedeno bajtkodo in jih je mogoče vključiti pri izvajanju java -ea.
  • this (...) - se lahko uporablja znotraj konstruktorja razreda za klic drugega konstruktorja istega razreda, ki ustreza podpisu argumentov.
  • Namesto predloge so uporabljeni posploševanja, izgleda zelo podobno: razred CLASS_NAME (...). V posplošitvah je prepovedano uporaba primitivno vrste ( int, byte, char itd ...). Parametre je mogoče uporabiti samo razredi.
    Poleg tega podprto omejene vrste z podajanjem nadrazreda za razrede parametrov. Na primer razglasitev razreda "generični razred" za CLASS_NAME v katerem so dovoljeni samo razredi potomcev splošnega številskega razreda Številka.
  • Za hitro kopiranje nizov je priročno uporabiti System.arraycopy ().
  • Izvorna datoteka Java je besedilna datoteka, ki vsebuje eno ali več definicij razredov. Prevajalec Java predvideva

    da je izvorna koda programov shranjena v datotekah z razširitvami Java. Koda, pridobljena med prevajanjem za vsak razred, je zapisana v ločeni izhodni datoteki z imenom, ki je enako imenu razreda in razširitvi razreda.

    Najprej bomo v tem poglavju napisali, prevedli in zagnali kanonični program "Hello World". Nato si bomo ogledali vse bistvene leksikalne elemente, ki jih zazna prevajalnik Java: presledke, komentarje, ključne besede, identifikatorje, črke, operaterje in razmejevalce. Do konca tega poglavja boste imeli dovolj informacij, da boste lahko sami krmarili po dobrem programu Java.

    Torej, tukaj je vaš prvi program Java

    :

    razred HelloWorld (

    Sistem. ven. println ("Pozdravljeni svet");

    Če želite delati s primeri, navedenimi v knjigi, morate preiti omrežje družbe Sun Microsystems in namestiti Java Developers Kit - paket za razvoj aplikacij Java (

    http://java.sun.com/products/jdk ). Popoln opis pripomočkov paketa JDK - vhod Priloga 1 .

    Jezik Java zahteva, da je vsa programska koda v imenovanih razredih. Zgornji primer besedila je treba zapisati v datoteko HelloWorld.java. Prepričajte se, da se velike črke v imenu datoteke ujemajo z istim imenom razreda, ki ga vsebuje. Če želite prevesti ta primer, morate zagnati prevajalnik Java - javac in podati ime datoteke z izvornim besedilom kot parameter:

    \> javac HelloWorld.Java

    Prevajalec bo za naš primer ustvaril datoteko HelloWorld.class z bajt kodo, neodvisno od procesorja. Če želite izvesti nastalo kodo, morate imeti okolje izvajanja Java (v našem primeru program java), v katerega je treba za izvedbo naložiti nov razred. Poudarjamo, da je podano ime razreda in ne ime datoteke, v kateri je ta razred.

    > java HelloWorld

    Malo je bilo storjenega, vendar smo preverili, ali nameščeni prevajalec Java in čas izvajanja delujeta.

    Korak za korakom

    HelloWorld je banalen primer. Vendar pa tudi tako preprost program za začetnike v jezikuJava se lahko zdi zastrašujoče, saj vas seznani s kopico novih konceptov in podrobnosti o skladnji. Poglejmo natančno vsako vrstico našega prvega primera in analiziramo elemente, ki sestavljajo program Java.

    razred HelloWorld (

    Ta vrstica uporablja rezervirano besedo

    razred. Prevajalcu pove, da bomo opisali nov razred.Celoten opis razreda je nameščen med odpiralnim ukrivljenim oklepajem v prvi vrstici in ustreznim zapiralnim oklepajem v 5. vrstici.Java se uporablja na enak način kot v C in C++.

    javna statična void main (String args) (

    Ta na prvi pogled preveč zapletena zgledna vrstica je posledica pomembne zahteve, ki je značilna za razvoj jezika Java. Bistvo je, da v

    Java nima globalnih funkcij. Ker se bodo te vrstice pojavile v večini primerov v prvem delu te knjige, poglejmo podrobneje vsak element druge vrstice.

    Če to vrstico razdelimo na ločene žetone, takoj naletimo na ključno besedo

    javno. To - modifikator dostopa, ki programerju omogoča nadzor vidnosti katere koli metode in katere koli spremenljivke. V tem primeru modifikator dostopajavnost pomeni, da je metodamain je viden in dostopen vsem razredom. Obstajata še 2 kazalnika ravni dostopa - zasebno in zaščiteno, s čimer se bomo podrobneje seznanili8. poglavje .

    Naslednja ključna beseda je

    statična. S pomočjo te besede se razglasijo metode in spremenljivke razreda, ki se uporabljajo za delo s razredom kot celoto. Metode, ki v svoji deklaraciji uporabljajo ključno besedo static, lahko delujejo samo neposredno z lokalnimi in statičnimi spremenljivkami.

    Pogosto boste potrebovali metode, ki vrnejo vrednost ene ali druge vrste: na primer

    int za cela števila, float - za pravo ime ali razred za podatkovne vrste, ki jih določi programer. V našem primeru morate samo prikazati niz in vrniti vrednost iz metodeglavna ni potrebna. Zato je bil uporabljen modifikatornično. To vprašanje je podrobneje obravnavano v4. poglavje .

    Končno pridemo do imena metode

    glavni. Tu ni nič nenavadnega, vse obstoječe implementacije Java interpreterjev, ki so prejeli ukaz za razlago razreda, začnejo svoje delo s klicem metode glavni. Prevajalec Java lahko prevede razred, ki nima glavne metode. In tukaj je tolmač Java, ki izvaja razrede brez metode glavni ne more.

    Vsi parametri, ki jih je treba posredovati metodi, so podani znotraj oklepajev kot seznam elementov, ločenih z ";" (podpičje). Vsak element na seznamu parametrov je sestavljen iz tipa, ločenega s presledkom, in identifikatorja. Tudi če metoda nima parametrov, morate za njeno ime še vedno postaviti nekaj oklepajev. V primeru, o katerem zdaj razpravljamo, o metodi

    main ima samo en parameter, čeprav precej zapletenega tipa. Vrvica args razglasi parameter z imenomargs, ki je niz predmetov, ki predstavljajo razredVrvica. Upoštevajte oglate oklepaje za identifikatorjem args. Kažejo, da imamo opravka z matriko in ne z enim samim elementom določene vrste. V naslednjem poglavju se bomo vrnili k razpravi o vrstah, zaenkrat pa upoštevajte, da je tip Vrvica - to je razred. Podrobneje se bomo pogovarjali o nizih vPoglavje 9 .

    Sistem. ven. prlntln ("Pozdravljeni svet!");

    Ta vrstica izvaja metodo

    tiskanje zunanjega predmeta. Objekt out je razglašeno v razreduOutputStream in statično inicializiran v sistemu. V poglavje 9 in 13 imeli se boste lahko seznaniti z odtenki dela razredov String in OutputStream.

    Zaključni zavit oklepaj v vrstici 4 konča deklaracijo metode

    main in isti oklepaj v 5. vrstici konča deklaracijo razreda HelloWorld.

    Leksikalne osnove

    Zdaj, ko smo podrobno obravnavali minimalni razred Java, se vrnimo nazaj in poglejmo splošne vidike skladnje tega jezika. Programi za

    Java - je zbirka presledkov, komentarjev, ključnih besed, identifikatorjev, dobesednih konstant, operaterjev in ločilnikov.jezik, ki omogoča poljubno oblikovanje programskega besedila. Da bi program pravilno deloval, njegovega besedila ni treba poravnati na poseben način. Na primer razredHelloWorld bi lahko napisali v dveh vrsticah ali na kakršen koli drug način. Deloval bo popolnoma enako, pod pogojem, da je med posameznimi žetoni (med katerimi ni operaterjev ali razmejevalnikov) vsaj en presledek, zavihek ali vir vrstice.

    Komentarji (1)

    Čeprav komentarji nikakor ne vplivajo na izvedljivo kodo programa,

    ob pravilni uporabi se izkažejo za zelo pomemben del izvorne kode. Obstajajo tri vrste komentarjev: komentarji v eni vrstici, komentarji v več vrsticah in končno komentarji dokumentacije. Komentarji v eni vrstici se začnejo z // in končajo na koncu vrstice. Ta način komentiranja je uporaben za kratke razlage posameznih vrstic kode:

    a = 42; // če

    42 - odgovor, kaj je bilo vprašanje?

    Za podrobnejša pojasnila lahko uporabite komentarje v več vrsticah, ki začnejo besedilo komentarjev s simboli / * in končajo s simboli * /. V tem primeru bo vse besedilo med temi pari simbolov obravnavano kot komentar in prevajalec ga bo ignoriral.

    * Ta koda je nekoliko zapletena ...

    * Poskušal bom razložiti:

    Tretja, posebna oblika pripomb, je za storitveni program

    javadoc,ki uporablja komponente prevajalnika Java za samodejno ustvarjanje dokumentacije za vmesnike razredov. Konvencija, ki se uporablja za tovrstne komentarje, je: postaviti komentar za dokumentiranje pred deklaracijo javnega razreda, metode ali spremenljivke, začeti ga morate z / ** (poševnica naprej in dve zvezdici). Tak komentar se konča na enak način kot običajen komentar - s simboli * /. Program javadoc lahko v komentarjih doc razlikuje med nekaterimi posebnimi spremenljivkami, ki se začnejo s simbolom @. Tu je primer takega komentarja:

    * Ta razred lahko naredi čudovite stvari. Svetujemo vsem, ki

    * želi napisati še bolj popoln razred, vzemite to kot

    * osnovno.

    * @glej Javo. applet. Applet

    * © avtor Patrick Naughton

    razred CoolApplet razširja Applet (/ **

    * Ta metoda ima dva parametra:

    ključ je ime parametra.je vrednost parametra z imenomključ.

    * / void put (String key, Object value) (

    Rezervirane ključne besede

    Rezervirane ključne besede so posebni identifikatorji v jeziku

    Java se uporablja za identifikacijo vgrajenih vrst, modifikatorjev in kontrolnikov izvajanja programa. Danes v jeziku J ava ima 59 rezerviranih besed (glej tabelo 2). Te ključne besede, skupaj s sintakso operatorjev in ločil, so vključene v opis jezika.Java. Uporabljajo se lahko samo za predvideni namen; ne morejo se uporabljati kot identifikatorji za imena spremenljivk, razredov ali metod.

    tabela 2

    Rezervirane besede Java

    Upoštevajte, da besede

    byvalue, cast, const, future, generic, goto, internal, operator, external, rest, varrezervirano v Java, vendar še ni v uporabi Poleg tega je v Java obstajajo rezervirana imena metod (te metode podeduje vsak razred in jih ni mogoče uporabiti, razen v primerih izrecne preglasitve metod razreda Predmet).

    Tabela 3

    Rezervirana imena metod

    Java

    Identifikatorji

    Identifikatorji se uporabljajo za poimenovanje razredov, metod in spremenljivk. Kot identifikator se lahko uporabi katero koli zaporedje malih in velikih črk, številk in simbolov _ (podčrtaj) in $ (dolar). Identifikatorji se ne smejo začeti s števko, da jih prevajalec ne zamenjuje s številskimi dobesednimi konstantami, ki bodo opisane spodaj.

    Java - velike in male črke. To pomeni, da je npr. Vrednost in VALUE - različne identifikatorje.

    Dobesednosti

    Konstante v

    Java so podane z njihovo dobesedno predstavitvijo. Cela števila, plavajoče vrednosti, logične vrednosti, znaki in nizi so lahko postavljeni kjer koli v izvorni kodi. Vrste bodo zajete v4. poglavje .

    Celoštevilčne črke

    Cela števila so najpogosteje uporabljena vrsta v običajnih programih. Vsaka cela vrednost, na primer 1, 2, 3, 42, je celoštevilska literatura. V tem primeru so podane decimalne številke, torej številke z osnovo 10 - točno tiste, ki jih vsakodnevno uporabljamo zunaj sveta računalnikov. Poleg decimalnih števil se lahko kot celoštevilske črke uporabijo tudi osnove 8 in 16 - oktalna in šestnajstiška. Java prepozna oktalne številke z začetno ničlo. Običajne decimalne številke se ne morejo začeti z ničlo, zato bo uporaba zunanje veljavne številke 09 v programu povzročila sporočilo o napaki pri prevodu, saj 9 ni v območju 0.

    7, velja za oktalne števke. Šestnajstiška konstanta se razlikuje po vodilnih znakih nič x (0x ali 0X). Obseg vrednosti za šestnajstiško števko je 0.15 in kot števke za vrednosti 10 ..15 uporablja črke od A do F (ali od a do f). S šestnajstiškimi števili lahko jedrnato in jasno predstavite računalniško usmerjene vrednosti, na primer s pisanjem Oxffff namesto 65535.

    Celoštevilske črke so vrednosti tipa

    int, ki v Java je shranjena v 32-bitni besedi. Če potrebujete vrednost, ki je v absolutni vrednosti večja od približno 2 milijard, morate uporabiti konstantno podobnodolga. V tem primeru bo številka shranjena v 64-bitno besedo. Za številke s katero koli od zgornjih podlag lahko desni dodelite majhno ali veliko črkoL, ki na tak način označuje, da je dano število tipadolga. Na primer Ox7ffffffffffffffL oz9223372036854775807L je največja vrednost za število kot dolga.

    Dobesednosti s plavajočo vejico

    Številke s plavajočo vejico predstavljajo decimalne vrednosti z delnim delom. Lahko so zapisani v običajnih ali eksponentnih oblikah. V običajnem formatu je število sestavljeno iz števila decimalnih mest, ki jim sledi decimalna vejica, ki ji sledijo decimalne številke delnega dela. Na primer, 2.0, 3.14159 in 6667 so veljavne vrednosti s plavajočo vejico, zapisane v standardni obliki. V eksponentni obliki je decimalni vrstni red dodatno naveden za navedenimi elementi. Vrstni red je določen s pozitivnim ali negativnim decimalnim številom, ki sledi znaku E ali e. Primeri števil v eksponentni obliki: 6.022e23, 314159E-05, 2e + 100. V

    Številke s plavajočo vejico Java se privzeto obravnavajo kot dvojice. Če potrebujete konstantno všečfloat, desno od črke, morate dodeliti znak F ali f. Če ste ljubitelj odvečnih definicij, jih lahko dodate literalom, kot je podvojite znak D oz d. Privzete vrednosti vrstedvojice so shranjene v 64-bitni besedi, manj natančne vrednosti, na primer float - v 32 -bitnem.

    Logične črke

    Logična spremenljivka ima lahko samo dve vrednosti-

    res in napačno (napačno). Logične vrednosti res in false se ne pretvorijo v nobeno številčno predstavitev. Ključna beseda true v Javi ni enako 1, false pa ni enako 0. V V Javi je te vrednosti mogoče dodeliti samo logičnim spremenljivkam ali uporabiti v izrazih z logičnimi operatorji.

    Dobesednosti znakov

    Simboli v

    Java - to so indeksi v tabeli simbolovUNICODE. So 16-bitne vrednosti, ki jih je mogoče pretvoriti v cela števila in na katerih lahko uporabite celoštevilčne aritmetične operatorje, na primer operaterje seštevanja in odštevanja. Dobesedni znaki so postavljeni v par apostrof (""). Vsi vidni simboli tabeleASCII lahko vstavimo neposredno v par apostrof: -"a", "z", "@". Za znake, ki jih ni mogoče vnesti neposredno, je na voljo več zaporednih izhodov.

    Tabela 3.

    2. Pobegne sekvence

    Nadzorno zaporedje

    Opis

    Oktalni simbol

    (ddd)

    Šestnajstiški znak

    UNICODE (xxxx)

    Apostrof

    Obratna poševnica

    Vračilo kočije

    Vir vrstice, nova vrstica

    Prevod strani

    (vir obrazca)

    Vodoravni jeziček

    (zavihek)

    Vrnite se korak nazaj

    (povratnica)

    Niz nizov

    Vnesite literal v

    Java izgleda tako kot v mnogih drugih jezikih- je poljubno besedilo, zaprto v par dvojnih narekovajev (""). Čeprav so literalni nizi vJava se izvaja na zelo poseben način(Java za vsako vrstico ustvari objekt), zunaj se to nikakor ne kaže. Primeri literalnih nizov:"Zdravo Svet! "; "two \ lines; \ In to je v narekovajih \" ". Vse zaporedne zaporedje in oktalne / šestnajstiške zapisne oblike, ki so definirane za literalne črke, delujejo popolnoma enako za nize.Java se mora začeti in končati v isti vrstici izvorne kode. V tem jeziku za razliko od mnogih drugih ni zaporedja izhoda za nadaljevanje literalnega niza v novi vrstici.

    Operaterji

    Operater je nekaj, kar izvede neko dejanje na enem ali dveh argumentih in ustvari rezultat. Sintaktično se operaterji najpogosteje umeščajo med identifikatorje in literal. Operaterji bodo podrobno obravnavani v

    5. poglavje njihov seznam je naveden v tabeli 3. 3.

    Tabela 3.

    3. Operaterji jezika Java

    Ločevalniki

    Le nekaj skupin znakov, ki se lahko pojavijo v skladenjsko pravilnem programu Java, je še vedno neimenovanih. To so preprosti ločilniki, ki vplivajo na videz in občutek vaše kode.

    Ime

    Za kaj se uporabljajo?

    okrogle oklepaje

    Dodelite sezname parametrov v deklaraciji in klicu metode ter se uporabljajo tudi za nastavitev prioritete operacij v izrazih, označevanje izrazov v nadzornih stavkih izvajanja programa in pri operaterjih oddajanja.

    naramnice

    oglati oklepaji

    Uporablja se pri deklaracijah nizov in pri dostopu do posameznih elementov matrike.

    podpičje

    Ločuje operaterje.

    Ločuje identifikatorje v deklaracijah spremenljivk, ki se uporabljajo tudi za povezavo stavkov v glavi zanke

    za

    Imena paketov loči od imen podpaketa in razredov, ki se uporabljajo tudi za ločevanje imena spremenljivke ali metode od imena spremenljivke.

    Spremenljivke

    Spremenljivka je glavni element shranjevanja v programu Java. Za spremenljivko je značilna kombinacija identifikatorja, vrste in področja uporabe. Odvisno od tega, kje ste spremenljivko razglasili, je lahko lokalna, na primer za kodo znotraj zanke for, ali pa je spremenljivka primerka razreda, ki je dostopna vsem metodam tega razreda. Lokalni obsegi so deklarirani z zavitimi oklepaji.

    Izjava spremenljivke

    Osnovna oblika razglasitve spremenljivke je naslednja:

    identifikator vrste [= vrednost] [, identifikator [= vrednost

    7...];

    Tip je eden od vgrajenih tipov, to je

    byte, short, int, long, char, float, double,boolean ali ime razreda ali vmesnika. Vse te vrste bomo podrobno obravnavali vnaslednje poglavje ... Spodaj je nekaj primerov razglasitve spremenljivk različnih vrst. Upoštevajte, da nekateri primeri vključujejo inicializacijo začetne vrednosti. Spremenljivke, za katere niso podane začetne vrednosti, se samodejno inicializirajo na nič.

    Spodnji primer ustvari tri spremenljivke, ki ustrezajo stranicam pravokotnega trikotnika in nato

    c z uporabo Pitagorjevega izreka se izračuna dolžina hipotenuze, v tem primeru številka 5, velikost hipotenuze klasičnega pravokotnega trikotnika s stranicami 3-4-5.

    spremenljivke razreda (

    javna statična void main (String args) (

    = Math.sqrt (a * a + b * b);

    System.out.println ("c =" + c);

    Tvoj prvi korak

    Veliko smo že dosegli: najprej smo napisali majhen program v jeziku

    Java in podrobno preučila, kaj vsebuje (kodni bloki, komentarji). Videli smo seznam ključnih besed in operaterjev, katerih namen bo podrobneje razložen v poznejših poglavjih. Zdaj lahko neodvisno ločite glavne dele katerega koli programa Java in ste pripravljeni na branje.4. poglavje , ki podrobno opisuje preproste vrste podatkov.