Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Pachete in java

java



+ Font mai mare | - Font mai mic



1.     Pachete

Un pachet este o colectie de clase si interfete inrudite. Sunt folosite pentru gasirea si utilizarea mai usoara a claselor, pentru a evita conflictele de nume si pentru a controla accesul la anumite clase.



In Java toate clasele si interfetele sunt grupate in diferite pachete dupa functionalitatea lor. Cu ajutorul lor se pot construi aplicatiile. Cele mai importante pachete pe care le pune Java la dispozitie sunt:

      pachetul java.lang cuprinde clasele de baza ale limbajului;

      pachetul java.io cuprinde clasele pentru intrari/iesiri, lucru cu fisiere;

      pachetul java.math cuprinde clasele in care sunt definite operatiile matematice;

      pachetul java.util cuprinde clasele utile : Vector, Stack, Random, Date etc;

      pachetul java.text ofera suport pentru formatarea textelor;

      pachetul java.sql ofera suport pentru interogari SQL;

      pachetul java.beans cuprinde clasele necesare scrierii de componente reutilizabile;

      pachetul java.net cuprinde clasele care asigura accesul la retea;

      pachetul java.awt cuprinde clasele pentru grafica (Abstract Windowing Toolkit);

      pachetul javax.swing cuprinde clasele pentru grafica; extinde functionalitatea claselor din pachetul java.awt.

      pachetul java.rmi cuprinde clasele care asigura executie la distanta (Remote Message Interface);

      pachetul java.securitz cuprinde clasele care asigura mecanisme de securitate: criptare, autentificare;

Pentru a folosi o componenta a unui pachet trebuie facut cunoscut clasei curente fie pachetul in care se gaseste componenta, fie doar componenta. Acest lucru se realizeaza prin importarea pachetului sau, doar a clasei.

1.1.   Importul unui pachet, al unei clase sau a unei interfete

Importul se realizeaza prin instructiunea import.

Importul pachetelor se face prin specificarea numelui pachetului urmat de simbolul '*'. '*' are semnificatia ca toate clasele si interfetele pachetului sunt importate.

import NumePachet.*;

Exemple:

import java.io.*;

import javax.swing.*;

O data realizat intr-un fisier importul pachetului, orice clasa din pachet poate fi accesata prin numele ei.

Exemplu: Clasa Date apartine pachetului java.util.

import java.util.*;

public class ExData

}

Atentie: In cazul in care sunt importate doua pachete care contin o clasa cu acelasi nume atunci referirea la ea trebuie facuta folosind numele complet al clasei respective (nume pachet urmat de nume clasa).

Implicit, mediul Java importa trei pachete:

         pachetul java.lang

         pachetul curent

         pachetul implicit (fara nume)

Importul claselor (interfetelor) se realizeaza prin specificarea numelui clasei (interfetei) pe care dorim sa o folosim dintr-un pachet:

import NumePachet.NumeClasa;

Exemple:

import java.util.Date;

O data realizat intr-un fisier importul clasei (interfetei), aceasta poate fi accesata prin numele ei.

Exemplu:

import java.util.Date;

public class ExData

}

In cazul in care nu avem nevoie decat de cateva clase dintr-un pachet este mai eficient sa importam clasele decat intregul pachet.

1.2.   Crearea unui pachet

Se creeaza un director cu numele NumePachet in care vor fi salvate toate fisierele sursa ce contin clasele si interfetele pe care dorim sa le grupam intr-un pachet. Numele directorului da numele pachetului.

In prima linie a fiecarui fisier din directorul NumePachet se specifica faptul ca toate clasele din fisierul respectiv vor apartine clasei. Aceasta se realizeaza prin:

package NumePachet;

Prin urmare codul unei clase care se adauga la un pachet arata astfel:



package NumePachet;

public class NumeClasa

Instructiunea package actioneaza asupra intregului fisier sursa la inceputul caruia apare. Cu alte cuvinte nu putem specifica faptul ca anumite clase dintr-un fisier sursa apartin unui pachet iar altele altui pachet.

Daca nu este specificat un anumit pachet, clasele unui fisier sursa vor face parte din pachetul implicit (care nu are nici un nume). In general, pachetul implicit este format din toate clasele si interfetele directorului curent.

Pentru compilare trebuie sa ne plasam in directorul parinte al directorului NumePachet.

Se executa comanda:

javac NumePachet*.java

In cazul in care nu sunt erori in pachet, in directorul NumePachet trebuie sa se creeze fisierele .class.

Clasele care folosesc pachetul creat se aseaza in afara directorului. Pentru ca ele sa aiba acces la pachet trebuie setata variabila sistem CLASSPATH:

SET CLASSPATH = CaleDirectorNumePachet

Exemplu 1: In directorul c:lucru se formeaza un director Pachete in care se salveaza urmatoarele fisiere:

Fisierul A1.java contine clasa:

package Pachete;

public class A1

public void b()

protected void d()

}

Fisierul A2.java contine clasa:

package Pachete;

public class A2 implements A3

}

Fisierul A3.java contine clasa:

package Pachete;

public interface A3

Setam variabila CLASSPATH:

SET CLASSPATH = c:lucru

Pentru compilare ne pozitionam in directorul c:lucru si executam comanda:

javac Pachete*.java

Construim o clasa de test A4.java pe care o salvam in c:lucru:

import Pachete.*;

public class A4

}

Se compileaza si se executa ca orice clasa Java .

Exemplu 2: Construim un pachet Tablou care contine o clasa Matrice si una Vector.

package Tablou;

public class Vector

public Vector(int n, double a[])

public int getLungime()

public double getElem(int poz)

public double[] getVector()

public void setElem(int poz, double val)

public void setVector(double a[])

public String toString()

}

package Tablou;

public class Matrice

public Matrice(int n, int m, double a[][])

public int getNrLin()

public int getNrCol(int l)

public double getElem(int l, int c)

public double[][] getMatrice()

public String toString()

return s;

}

}

O clasa care foloseste pachetul Tablou ar fi:

1.             import Tablou.*;

2.             public class TestTablou,,};

5.             Matrice m=new Matrice(3,2,x);

6.             System.out.println(m);

7.             double y[]=;

8.             Vector v=new Vector(4,y);

9.             System.out.println(v);

10.         java.util.Vector vv=new java.util.Vector(5);

11.         for (int i=0;i<5;i++)

12.         vv.add(new Integer(i));

13.         System.out.println(vv);

14.         }

15.         }

Se observa ca in linia 10 se creeaza un obiect folosind de data aceasta clasa Vector din pachetul java.util. Pentru a face diferenta intre clasa pachetului nostru si clasa pachetului java.util trebuie sa specificam si numele pachetului.




Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1514
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved