Sunteți pe pagina 1din 4

4428

compilatorul java-cm imp progr.


in limbajul java pot fi scrise 2 categorii de programe: -aplicatiile
-miniaplicatiile
Apl Java sunt acele programe care pot fi executate prin intermediul masinii
virtuale java construita de interpretorul java.
Miniaplicatiile Java sunt acele programe care sunt executate prin intermediul unei
masini virtuale java construite de un browser.
/se mai numesc Appleturi si sunt prog care ruleaza in web.

Codul sursa al unui program java e stocat in fisierele sursa. FS sunt fisiere
de tip text ASCII care au extensia Java.Un fisier sursa poate contine o sigura
declaratie de clasa
sau mai multe declaratii de clasa cu blocuri de cod disjuncte.
daca fisierul sursa contine o sg declaratie de clasa at numele fisierului trb
sa fie identic cu cel al clasei definita in interior.
Limbajul Java face distinctie intre literele mici si literele mari.
Daca un fisier sursa are/contine mai multe clase cu blocuri de cod disjuncte
at obligatoriu o sg clasa trebuie declarata publica iar celelalte clase vor fi
nepublice.

Fiecare prog java are o clasa speciala cu care se lanseaza in executie. Ac se


mai num CLASA PRIMARA.
La apl Java clasa primara e clasa ce contine metoda--- public static void
main (String[] args)
in cazul apleturilor clasa primara e clasa ce extinde pe java in---
java.applet.Applet
Complilatorul Java incarca codul sursa interpreteaza instruct acesteia si
genereaza cate un fisier complita pt fiecare clasa continuta in codul sursa.Aceste
fisiere
au extensia class si se mai numesc fisiere clasa sau fisiere class.
Un fisier clasa va avea numele identic cu cel al clasei continute. Fisierele
clasa (codul fis clasa) se num COD DE OCTETI.
Comp java este programul javac.exe se lanseaza din linia de comanda si
primeste ca parametru numele fisierului sursa cu tot cu extensia java.

ESte indicat sa incepem compilarea cu clasa primara acest lucru va determ


compilarea intregului program. Sintaxa generala a liniei de comanda e urmatoarea:
javac[opt de compilare] Nume fisier sursa java[>erori text 2>d1]
In mod prestab compilatorul va scrie fisierle clasa in ac diresctor cu
fisierle sursa. Pt a forta compilatorul sa scrfie clasele in directorul .....
--javac-d C:\clase NumeSursa java
in cazul in care am fol in prog calse ce nu apartin interfetei java api trb sa
speciifcam compilat unde se gasesc aceste calse acest lucru se face cu optiunea
classpath
ex: comapnda---- javac-classpath
.;C>\clase;c>\alteclase.jar NumeSursa java
In direct curent marcat cu punct in direct c clase sau in direct c clase jar.
Optiunea o determina compilatorul saoptimizele codul de coteti a claselor .
e recoamnadata doar ijn cazul claselor f mari.
iar optimizarea consta intr o aranjare optima a intrarilor din tabela constantelor
claselor programului respective (in momentul functionarii unei metode).
Optiunea verbose determina compilat sa furnizeze info despre activ sa adica,
cand si de unde se inacrca clasele, cat dureaza compilarea unei clase, cat dur
comp intrg program
Compilatorul mai afiseaza mesaje de advertisment. Pt an u le mai afisa se
poate fol actiunea: nowarn. mesajul de adv nu rept erori.un mesaj frecv e mesajul
de depreciere al metodelor.
in mod prestab compilat include in codul de octeti al metodelor atributul
LineNumberTable,acesta stab o coresp biunivoca intre condul de octeti al metodei si
codul sursa al metodei
aceasta corespondenta este util in momentul depanarii prog cu ajutorul
depanatorului jdb exe (java debuger)
Imfo din acest atribut nu are nicijn rol in timpul executiei clasei/metodei
respective.
Compilarea cu optiunea G determina compilatorul sa insereze in codul de octeti al
metodelor si atributul local LocalVariableTable -acesta furnizeaza info despre
ficare var locala declarata in blocul de cod al met respective.
pt fiecare var lcoala e furniz locul tipul numele si lung domeniului de
vizibilitate. aceste info sunt utile tot in procesul de depanare si n au niciun rol
in timpil executiei
Toate aceste informatii din cele doua atribute maresc dimeniunea claselor. In
plis, aceste info pot fi folosite de domplitaoare pt a obtine un ocd usrsa identic
cu cel original.
Din aceste motive cele 2 atribute trb sa fie eliminate din clasele finale ale
programului. Ac lucru se face folisnd --- g:none

INTERPRETORUL JAVA

interpretorul e prog care constr memorie masina virtuala java pe care va fi


exec programul java.
Interpertorul e programul java.exe il gasim in bin si in jrebim/ sau jrebin n am
inteles bine..., se lanseaza din linia de ocmnada di preimeste ca parametru NUMELE
CLASEI PRIMARE FARA EXTENISIA CLASS.
Sintaxa generala a acestei comenzi de lansare in executie ---- java[optiuni]
NumeClasaPrimara [>rezultat txt 2>&1]
daca folosim ultima parte opt tot ce afiseaza prog u sistem out va fi tiparit in
fisirul text

CLASSPATH -optiune cu ac semnificatie cu compilatorul, e obligatorie.


optiunea Xmx1024m determina masina virtuala sa folsoeasca 1024 de megabaiti de
memorie libera

PROGRAMUL DE EXECUTARE A APPLETURILOR


Se num appletviewer.exe se lanseaza din linia de comanda si primeste ca parametru
numele documentului html care lanseaza appletul. Prog va parcurge codul sursa, va
executa doar etichetele applet deschizand pt fiacare in parte cate o fereastrra
separata

Eticheta applet are urmatoarele atribute: <APPLET CODE=


"NumeClasaPrimara.class"
CODEBASE=path
ARCHIVES=numae_arhiva
WIDTH=
HEIGHT=....>
<APPLET>
atributul cod al etichetei applet e oblig si contine ..cu extensia claass
daca ac clasa se gaseste in alt folder decat html ac lucru se va specifica clasa
relativa sau adresa url a clasei primare va fi specificate ain codebase
DAca clasa primara se gaseste intr o arhiva zip de ex, nume va fi specificat in
atrib archive, weight si hight vor contine numele applet in pixeli
Itre cele doua etichete applet putem plasa etichete param acestea folosesc pt
furnizarea param initiali appletului. sunt dingulare
<PARAM NAME: nume VALUE=valoare>
</APPLET>
Citirea se face cu metode public String getParameter(String name) ,metoda ce se
gasetse mostenita din clasa APPLET.
un alt [rog util e generatorul de documentatie ac e prog javadoc.exe se
lanseaza din linia de comanda si primeste ca param numele unui fisier sursa cu tot
cu extensia java.
e rewcomandat ca param sa fie numele clasei primare, documentatia generata de acest
program, asociata prog nosru v a fi in format html. prog va genera un fisier html
pt fiecare clasa din codul sursa
Aceste fisiere vor contine ierarhi de clase in crae se situeaza clasa noastra
,adica superclasa superclass etc, mai contine un index al atributelor si un index
al metodelor din class fara alte omftomatii
Fisierele trebuie mai departe edotate de programator.mzi sunt generate alte 3 prog:
packages.html, tree html, AllNAmes.html--index globat pt tot

LIMBAJUL JAVA
Elem de baza ale java se numesc atomi
aesteia s eimpart in urm vategorii:identificatorii, cuvinteele
rezervate/cheie, valorile literale, operatorii, separatorii si comentariile.
La inceputul compilarii comp javac extrage sdin codul sursa caract speciale salt la
linie noua si returul de care apoi ia din codul surdsa tpate spatiile car enu fac
parte din sirul de caracterre
Apoi lucreaza la extrgerea atomilor din sursa si la interpretarea lor.
IDENTIFICATORII sunt secvente de litere cifre si alte simboluri,folosite la
denumirea atributelor metodelor claselor interfetelor si pachetelor
-un indentificator poate incepep doar cu majuscula sau minuscula, su $,
sau cu liniuta de subliniere _
-nu poate incepe cu cifra
-!!! trebuie sa fie diferiti de cuvinte rezervate, nu pot coincide cu
cuv rezervate/cheie, ex: long-nu se poate, Long,LONG-se poate
CUVINTELE REZERVATE/CHEIE sunt cuv speciale itegrate in limbaj care pot fi utiliz
doar in scopul pt care au fost create/implementate
!!in java toate cuv rez se scriu cu minuscule
-utilizarea lor in calt scop va determina o eroare de compilare
Cuv rez fol in java sunt -pentru tipuri: byte, short, int,
long, float, double, char , void
-pt structuri: class,
interface, package
-pt mostenire: extends, implements
-pt structuri conditionale: if, else,
switch, case, default, break
-pt struct repetitive: while, do, for,
break constinue
-pt xceptii: try, catch, finally,
throw, throws
-pt acces:public, protected, private
-pt modiciatori de tip:
static,abstract,final,native,syncronised
ALTELE: TRUE FALSE IMPORT NEW RETURN THIS NULL

VALORILE LITERALE sunt secv de simboluri utilizare la reprez explicita a datelor in


prog java.
Aceste pot fi : numerice intregi, numerice in , mobila, valori buliene,
valori caracter, sire de caractere.
VAlorile lit numerice intregi-nr intgegi cu semn, stocate pe 32 de biti. ac pot fu
zecimale.octale si hexazecimale.
Val zecimale cu exceptia lui 0 incep ciu p cifra cupr 0-9
urmata de cifre intre 0-9, val octale incep mereu cu 0, urmat de ciffre octale 0-7,
val hexazecimale kincep cu 0x sau 0X,urmate de cifre hexazecimale apart 0-9 si
abcdef sau ABCDEF
val num mobila rept nr cu virgula, pot fi cu precizie
simpla sau cu precizie dubla, val lit mob cu precizie simpla sunt stocate pe 32 de
biti, iar cele cu dubla pe 64 biti.
pt ca o val num sa fie mobila putem folosi pu ctul zecimal sau sufixele dd D f F,in
mod prestab o val mobila e cu prec dubla.deeci d D u trb fol oblig.
ex: 1 -val intrg zecimala
1. -e cu precizie dubla
1d 1D -64 biti
1f 1F 1.f-32 biti
VAl buliene sunt 2 reprez de cuv rezerv true si false, val buliene la nivelu
codului de octeti sunt inloc de nr intregi, cu 1 si 0, pe 32 de biti, deci de tip
int.
Val caracter reprez caractere/simboluri, o val de dtip caracter e datat prin
siblolul resp incadrat de apostrof, de ex a= 'a' samd.
Pe langa acestea mai xista o serie de caractere spceciale care reprezinta comenzi,
de ex caract '\n' -salt la linie noua. '\b' un caracter inapoi
'\r' inceput de linie chair dacac e scrisa
'\"' delimiteaza sirul de caractere

VAl de tip sir de caractere sunt cuprinse intre "", ac secv pot contine si
caractere speciale.pt concatenarea val de tip sir de caract se fol operatorul +
ex "abc"+"ABC"; inseamna s="abcABC"

S-ar putea să vă placă și