Movatterモバイル変換


[0]ホーム

URL:


Prijeđi na sadržaj
WikipedijaSlobodna enciklopedija
Traži

Java (programski jezik)

Izvor: Wikipedija

Java jeobjektno orijentiraniprogramski jezik koji su razviliJames Gosling,Patrick Naughton i drugi inženjeri u tvrtci Sun Microsystems. Razvoj je počeo1991. kao dio projekta Green, a objavljen je ustudenom1995.

Tvrtka Sun posjedujetrademark na ime Java, ali samo okruženje moguće je bez plaćanja skinuti sa Sunovihinternetskih poslužitelja.[točno?]

Velika prednost u odnosu na većinu dotadašnjih programskih jezika je to što se programi pisani u Javi mogu izvoditi bez preinaka na svim operativnim sustavima za koje postojiJVM (Java Virtual Machine), dok je klasične programe pisane primjerice u C-u potrebno prilagođavati platformi (operacijskom sustavu) na kojem se izvode.

Time i bogatim skupom klasa za rad s mrežnim komunikacijama u jednom trenutku je Java bila najbolji izbor za široku lepezu mogućih aplikacija.Microsoft je stoga razvio svojC# i platformu.NET kao odgovor naopen source alternative.

Java je jedan od najkorištenijih programskih jezika. Procjene i izvješća o broju korisnika kreću se od gotovo 7 do preko 10 milijuna.[1][2][3]

Na današnjem tržištu, Java se koristi široko i dosljedno tamo gdje preteže brzina razvoja programskog sustava nad zahtjevima do brzine rada programa. Iako inspirirana jezikom C, Java pruža bolji stupanj sigurnosti i pouzdanosti zahvaljujući VM-u i hermetički zatvorenom okolišu u kome svaki program operira: na Javi se brže razvija program s manje pogrešaka.

Upravo zbog toga je popularna za razvoj programa namobilnim telefonima i kod financijskih kompanija. Javlja se kao osnovni jezik za programiranjeGoogleovog sustavaAndroid.

Sintaksa jezika

[uredi |uredi kôd]

Javinasintaksa je slična sintaksiC++-a. Sav kod se piše u klasama, a svakipodatak je objekt - uz iznimku primitivnih tipova podataka (cijeli i decimalni brojevi, boolean vrijednosti i znakovi).

Za razliku od C++-a, java ne podržava preopterećivanje operatora (ad-hoc polimorfizam). Također ne podržava višestruko nasljeđivanje klasa (ali dopušta višestruko nasljeđivanje sučelja). Uz dva tipa komentara korištena u C++-u (// ... za jednolinijski i/* ... */ za višelinijski kod), java uvodi i tzv. Javadoc komentare (/** ... */) koji dopuštaju pisanje dokumentacije za klase i metode.

Primjer Javadoc dokumentacije za klasu:

/*** Objašnjenje koda klase* može se protezati kroz više linija. ** @author  Ivan Horvat ** definira autora ove klase* @version 1.0         ** definira inačicu ovog koda* @since   2014-03-31  ** broj inačice u kojoj je prvi put*                      ** uvedena ova funkcionalnost*/

Javadoc dokumentacija za metode ima još niz dodatnih parametara, na primjer:

/**   * Kao primjer ćemo koristiti metodu koja prima dva broja   * i vraća njihov zbroj   * @param brojA  Ovo je prvi parametar metode   * @param brojB  Ovo je drugi parametar metode   * @return int   Metoda vraća cjelobrojni zbroj dva broja   * @exception IOException iznimka pri unosu vrijednosti koje nisu brojevi   * @see IOException  ** poveznica na stranicu o iznimci   */

Neki programi mogu automatski generirati dokumentaciju za program iz Javadoc komentara.

Primjer "Hello world!" programa

[uredi |uredi kôd]
Podrobniji članak o temi:"Hello, World!"
publicclassHelloWorldApp{publicstaticvoidmain(String[]args){System.out.println("Hello World!");// ispisuje string u konzolu}}

Datotekeizvornog koda moraju biti imenovane prema javnoj klasi koju sadrže, uz ekstenziju.java (u našem slučaju HelloWorldApp.java). Ta će sedatoteka kompajlirati ubytecode ekstenzije.class, što će dopustiti pokretanje koda. Moguće je imati samo jednu javnu (public) klasu u datoteci. Sve klase koje nisu javne mogu biti spremljene u bilo kojoj .java datoteci, no kompajlirat će se po jedna .class datoteka za svaku klasu, istog imena kao i klasa. Anonimne klase dobit će spojeni naziv njihove roditeljske klase, znaka $ i cijelog broja.

Modifikatori razine pristupa

[uredi |uredi kôd]

Svaka klasa i njezine metode (funkcije u klasi) imaju definirane razine pristupa, koje ograničavaju tko ih sve smije pozvati i tko ima pristup njihovimvarijablama (u primjeru ključna riječpublic.

KlasaPaketNaslijeđena klasa

(isti paket)

Naslijeđena klasa

(drugi paket)

Ostalo
publicima pristupima pristupima pristupima pristupima pristup
protectedima pristupima pristupima pristupima pristup-
nema modifikatorima pristupima pristupima pristup--
privateima pristup----

Klase zadano trebaju biti vezane za objekte (klasa definira tip objekta), i samo se putem objekta mogu pozvati varijable i metode neke klase, na primjer:

publicclassmojaKlasa{intx=5;publicstaticvoidmain(String[]args){mojaKlasamojObjekt=newmojaKlasa();System.out.println(mojaKlasa.x);//pogrešnoSystem.out.println(mojObjekt.x);//ispravno - ispisuje 5}}

Ključna riječstatic ispred klase označava da se ta klasa ne treba instancirati, odn. ne treba biti vezana za objekt kako bi se pozvala:

publicstaticclassmojaKlasa{//statička klasastaticintx=5;//statička varijablapublicstaticvoidmain(String[]args){System.out.println(mojaKlasa.x);//ovo je sada u redu}}

Statičke metode ne mogu pristupiti ni jednom članu klase koji također nije statičan.

Ključna riječvoid označava da funkcija na koncu izvođenja ne vraća nikakvu vrijednost onome tko ju je pozvao. Ako Java program prestaje raditi zbog greške, mora eksplicitno pozvatiSystem.exit( int ), gdje je intcijeli broj, kako bi mogao vratiti broj pogreške (obično se broj 0 uzima kao završetak bez pogreške).

Funkcija nazivamain je točka ulaska u program. Funkcija mora primati niz (polje) stringova (string je niz znakova), u slučaju da se funkcija pokreće uz dodatne argumente, oni se spremaju u niz imenaargs.

KlasaSystem deklarirapublic static polje imenaout.Out objekt je instanca klasePrintStream, koja pruža mnoge metode za ispis.

Izvori

[uredi |uredi kôd]

Vanjske poveznice

[uredi |uredi kôd]
Dobavljeno iz "https://hr.wikipedia.org/w/index.php?title=Java_(programski_jezik)&oldid=6918790"
Kategorije:

[8]ページ先頭

©2009-2026 Movatter.jp