CATEGORII DOCUMENTE |
Biblioteci (packages) in Java
Un program Java este o colectie de declaratii de clase care sunt organizate in biblioteci (packages). Membrii unei biblioteci sunt deci, clase sau interfete declarate intr-o unitate de compilare comuna. Termenul de package desemneaza nu numai o biblioteca, el reprezinta si directorul care contine toate fisierele utilizate pentru declararea claselor ce formeaza biblioteca.
Declararea unei biblioteci se face prin ordinul
package nume;
unde nume reprezinta calea completa a directorului unde se afla biblioteca. Spre exemplu
package dir1.aaa.my_package;
declara biblioteca my_package aflata in directorul dir1/aaa/my_package. Declaratiile de import sunt sub doua forme
import nume_complet_biblioteca;
import nume_biblioteca.*;
spre exemplu
import java.util.Vector;
import java.util.*;
In concluzie, o unitate de compilare este formata din : declaratii package, declaratii de import si declaratii de clase. O unitate de compilare poate contine doar o singura clasa declarata public. Daca aceasta exista, atunci numele fisierului care o contine trebuie sa fie format din numele clasei si extensia "java". In urma compilarii rezulta cate un fisier cu extensia class pentru fiecare clasa din pachet si numele acelasi cu numele clasei corespunzatoare.
Limbajul Java se bazeaza pe o serie de biblioteci cu ajutorul carora se realizeaza aplicatiile. Principalele biblioteci sunt :
- java.lang contine clasele de cea mai larga utilizare in limbaj;
- java.util contine clase care implementeaza, in general, structuri de date utile;
- java.io contine clasele ce implementeaza fuctii de I/O cu fisiere;
- java.applet contine clase ce implementeaza functii pentru applet-uri;
- java.net contine clase destinate lucrului in retea.
1 Pachetul java.lang
O parte dintre clasele acestui pachet sunt : Error, Exception; o serie de clase care implementeaza exceptii precum ArithmeticException, ArrayIndexOutOfBoundsException, ArrayStoreException; clase corespunzatoare tipurilor de date de baza : Boolean, Byte, Character, Short, Integer, Long, Float, Double; clase de lucru cu siruri de caractere : String, StringBuffer; clasa Math care contine functiile matematice; clasele System, Thread, Throwable. Toate clasele extind clasa Object membra tot a pachetului java.lang.
Toate clasele care implementeaza tipurile de date de baza poseda functii de conversie cu sirurile de caractere (String-uri) in ambele directii. Astfel, poseda functii valueOf (clasele Float, Double, Long) sau Byte.parseByte(), Integer.parseInt(), Long.parseLong() care transforma un sir de caractere in valoarea numerica corespunzatoare. Toate aceste clase poseda o metoda toString care transforma o valoare din tipurile precizate in sir de caractere.
Urmatorul program exemplifica conversii cu cateva dintre tipurile amintite.
import java.io.*;
public class ShowConvers
catch(IOException e)
}
}
Clasa System are atributul final (nu poate fi extinsa). Ea defineste o interfata de apeluri sistem, independenta de platforma. Toate metodele sunt statice. Contine variabilele statice in, out si err care desemneaza fisierele standard de intrare, iesire si de erori. Contine o functie arraycopy care copiaza un tablou sau o portiune de tablou intr-un alt tablou. Elementele tablourilor pot fi de tip Object sau derivate din acesta.
Manevrarea sirurilor de caractere se face prin clasele String si StringBuffer care sunt finale. Un obiect de tip String se poate crea direct,
String sir="exemplu"; sau
String sir=new String("exemplu");
Clasa StringBuffer este utilizata in cazul in care se folosesc sirurui de caractere care se modifica. Urmatorul program exemplifica una dintre posibilitatile de lucru cu cele doua tipuri de siruri de caractere. Tipul sir de caractere a aparut si va apare foarte des in programe.
import java.io.*;
public class ShowString
public static String invers2(String S)
public static void main (Stringas args)
}
Programul declara si foloseste doua functii de inversare a unui sir de caractere. Ambele primesc ca argument un String si folosesc ca variabila intermediara o instanta a clasei StringBuffer.
2 Pachetul java.util
Dintre clasele acestui pachet amintim StringTokenizer, Vector si Stack. Clasa StringTokenizer este un analizor pe siruri de caractere. Se refera la elemente precum numere, nume, operatori, delimitatori. Delimitatorii impliciti sunt : tt, tr tn dar se pot specifica si delimitatori noi. Programul urmator foloseste caracterul ';' pentru a delimita instructunile din cadrul unui sir de caractere.
import java.io.*;
import java.util.StringTokenizer ;
public class ShowToken
catch(Exception e)
trycatch(IOException e)
}
}
Urmatorul program exemplifica utilizarea instantelor de tip Vector. Aceasta clasa se foloseste in cazul in care este nevoie de vectori care isi modifica dimensiunea (altfel tablourile obisnuite sunt suficiente). In definitia acestei clase, elemetele sunt de tip Object si pot fi inlocuite cu orice tip derivat din acesta. Clasa poseda metodele capacity() si size() care intorc capacitatea si respectiv dimensiunea actuala a vectorului. Clasa poseda diferite metode care permit adaugarea sau inserarea de elemente. Daca dimensiunea vectorului este egala cu capacitatea sa si se adauga un nou element atunci capacitatea vectorului se va mari implicit, fara actiunea programatorului. In constructor se poate preciza incrementul de crestere a capacitatii. Declaratia
Vector vec=new Vector(10,3);
precizeaza un vector care are 10 elemente initial si posibilitatea de a-si incrementa la nevoie capacitatea cu 3 elemete.
Programul urmator exemplifica utilizarea tipului Vector. Vom utiliza un vector de persoane.
class Persoana
public void SetVirsta(int n)
public Persoana(String S,int v)
public String GetNume()
public int GetVirsta()
public String toString()
}
import java.io.*;
import java.util.*;
public class ShowVector
public void Introducere()
catch(IOException e)
}while(true);
}
public void Listare()
public static void main (Stringas args)
{
ShowVector show=new ShowVector(10,5);
show.Introducere();
show.Listare();
show.Introducere();
show.Listare();
try
catch(IOException e)
}
}
Metoda addElement() adauga un element pe ultima pozitie din vector. Pentru a memora sau modifica un element pe pozitia i se foloseste metoda setElementAt(E,i). Inserarea pe pozitia i se face cu metoda insertElementAt(E,i). Metoda removeElementAt(i) sterge elementul de pe pozitia i. Metoda contains(E) verifica exiastenta unui anumit element pritre elementele vectorului.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1885
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved