logo

Pachetul Java

  1. Pachetul Java
  2. Exemplu de pachet
  3. Accesarea pachetului
    1. Prin import nume pachet.*
    2. Prin import packagename.classname
    3. Prin nume complet calificat
  4. Subpachet
  5. Se trimite fișierul clasei într-un alt director
  6. - comutator classpath
  7. 4 moduri de a încărca fișierul de clasă sau fișierul jar
  8. Cum să pui două clase publice într-un pachet
  9. Import static
  10. Clasa pachet

A pachet java este un grup de tipuri similare de clase, interfețe și sub-pachete.

Pachetul în java poate fi clasificat în două forme, pachet încorporat și pachet definit de utilizator.

Există multe pachete încorporate, cum ar fi java, lang, awt, javax, swing, net, io, util, sql etc.

Aici, vom avea învățarea detaliată despre crearea și utilizarea pachetelor definite de utilizator.

dezavantaje legate de internet

Avantajul pachetului Java

1) Pachetul Java este folosit pentru a clasifica clasele și interfețele, astfel încât acestea să poată fi întreținute cu ușurință.

2) Pachetul Java oferă protecție la acces.

3) Pachetul Java elimină coliziunea de denumire.


Exemplu simplu de pachet java

The cuvânt cheie pachet este folosit pentru a crea un pachet în java.

 //save as Simple.java package mypack; public class Simple{ public static void main(String args[]){ System.out.println('Welcome to package'); } } 

Cum se compila pachetul java

Dacă nu utilizați niciun IDE, trebuie să urmați sintaxă dat mai jos:

 javac -d directory javafilename 

Pentru exemplu

 javac -d . Simple.java 

Comutatorul -d specifică destinația unde să plaseze fișierul de clasă generat. Puteți folosi orice nume de director precum /home (în cazul Linux), d:/abc (în cazul Windows) etc. Dacă doriți să păstrați pachetul în același director, puteți utiliza . (punct).


Cum se rulează programul pachet java

Trebuie să utilizați un nume complet calificat, de ex. mypack.Simple etc pentru a rula clasa.


A compila: javac -d . Simplu.java
A alerga: java mypack.Simple
 Output:Welcome to package 
-d este un comutator care spune compilatorului unde să pună fișierul de clasă, adică reprezintă destinația. . reprezintă folderul curent.

Cum se accesează pachetul dintr-un alt pachet?

Există trei moduri de a accesa pachetul din afara pachetului.

  1. import pachet.*;
  2. import package.classname;
  3. nume complet calificat.

1) Folosind packagename.*

Dacă utilizați pachet.* atunci toate clasele și interfețele acestui pachet vor fi accesibile, dar nu și subpachetele.

Cuvântul cheie import este folosit pentru a face ca clasele și interfața unui alt pachet să fie accesibile pachetului curent.

Exemplu de pachet care importă numele pachetului.*

 //save by A.java package pack; public class A{ public void msg(){System.out.println('Hello');} } 
 //save by B.java package mypack; import pack.*; class B{ public static void main(String args[]){ A obj = new A(); obj.msg(); } } 
 Output:Hello 

2) Folosind packagename.classname

Dacă importați package.classname, atunci numai clasa declarată a acestui pachet va fi accesibilă.

Exemplu de pachet prin import package.classname

 //save by A.java package pack; public class A{ public void msg(){System.out.println('Hello');} } 
 //save by B.java package mypack; import pack.A; class B{ public static void main(String args[]){ A obj = new A(); obj.msg(); } } 
 Output:Hello 

3) Folosind un nume complet calificat

Dacă utilizați un nume complet calificat, atunci numai clasa declarată a acestui pachet va fi accesibilă. Acum nu mai este nevoie de import. Dar trebuie să utilizați un nume complet calificat de fiecare dată când accesați clasa sau interfața.

Este folosit în general atunci când două pachete au același nume de clasă, de ex. Pachetele java.util și java.sql conțin clasa Date.

Exemplu de pachet prin nume complet calificat de import

 //save by A.java package pack; public class A{ public void msg(){System.out.println('Hello');} } 
 //save by B.java package mypack; class B{ public static void main(String args[]){ pack.A obj = new pack.A();//using fully qualified name obj.msg(); } } 
 Output:Hello 

Notă: Dacă importați un pachet, subpachetele nu vor fi importate.

Dacă importați un pachet, toate clasele și interfața pachetului respectiv vor fi importate, excluzând clasele și interfețele subpachetelor. Prin urmare, trebuie să importați și subpachetul.


Notă: Secvența programului trebuie să fie pachet, apoi import și apoi clasă.


Subpachet în java

Pachetul din interiorul pachetului se numește subpachet . Ar trebui creat pentru a clasifica pachetul în continuare .

Să luăm un exemplu, Sun Microsystem a definit un pachet numit java care conține multe clase precum System, String, Reader, Writer, Socket etc. Aceste clase reprezintă un anumit grup, de ex. Clasele Reader și Writer sunt pentru operarea de intrare/ieșire, clasele Socket și ServerSocket sunt pentru rețele etc. și așa mai departe. Deci, Sun a subcategorizat pachetul java în subpachete, cum ar fi lang, net, io etc. și a pus clasele legate de Input/Output în pachetul io, clasele Server și ServerSocket în pachete net și așa mai departe.

Standardul de definire a pachetului este domain.company.package de ex. com.javatpoint.bean sau org.sssit.dao.

Exemplu de subpachet

 package com.javatpoint.core; class Simple{ public static void main(String args[]){ System.out.println('Hello subpackage'); } } 
A compila: javac -d . Simplu.java
A alerga: java com.javatpoint.core.Simple
 Output:Hello subpackage 

Cum se trimite fișierul de clasă într-un alt director sau unitate?

Există un scenariu, vreau să pun fișierul de clasă al fișierului sursă A.java în folderul de clase al unității c:. De exemplu:

 //save as Simple.java package mypack; public class Simple{ public static void main(String args[]){ System.out.println('Welcome to package'); } } 

A compila:

e:sources> javac -d c:classes Simple.java

A alerga:

Pentru a rula acest program din directorul e:source, trebuie să setați classpath a directorului în care se află fișierul de clasă.
e:sources> set classpath=c:classes;.;
e:sources> java mypack.Simple

O altă modalitate de a rula acest program prin comutatorul -classpath din java:

Comutatorul -classpath poate fi folosit cu instrumentul javac și java.

Pentru a rula acest program din directorul e:source, puteți utiliza comutatorul -classpath din java care spune unde să căutați fișierul de clasă. De exemplu:

exemple de arbori binari

e:sources> java -classpath c:classes mypack.Simple

 Output:Welcome to package 

Modalități de a încărca fișierele de clasă sau fișierele jar

Există două moduri de a încărca fișierele de clasă temporare și permanente.
  • Temporar
    • Setând calea clasei în promptul de comandă
    • Prin comutatorul -classpath
  • Permanent
    • Prin setarea classpath în variabilele de mediu
    • Prin crearea fișierului jar, care conține toate fișierele de clasă și copierea fișierului jar în folderul jre/lib/ext.

Regulă: într-un fișier sursă java poate exista o singură clasă publică și trebuie salvată după numele clasei publice.

 //save as C.java otherwise Compilte Time Error class A{} class B{} public class C{} 

Cum să pun două clase publice într-un pachet?

Dacă doriți să puneți două clase publice într-un pachet, aveți două fișiere sursă java care conțin o clasă publică, dar păstrați același nume de pachet. De exemplu:
 //save as A.java package javatpoint; public class A{} 
 //save as B.java package javatpoint; public class B{} 

Ce este caracteristica de import static a Java5?

Faceți clic pe caracteristica de import static din Java5.

Dar clasa de pachet?

Faceți clic pentru Clasa pachet