logo

Paquet Java

  1. Paquet Java
  2. Exemple de paquet
  3. Accés al paquet
    1. Per importar el nom del paquet.*
    2. Per importar packagename.classname
    3. Amb nom complet
  4. Subpaquet
  5. S'està enviant un fitxer de classe a un altre directori
  6. -interruptor de classpath
  7. 4 maneres de carregar el fitxer de classe o el fitxer jar
  8. Com posar dues classes públiques en un paquet
  9. Importació estàtica
  10. Classe de paquet

A paquet java és un grup de tipus similars de classes, interfícies i subpaquets.

El paquet en Java es pot classificar en dues formes, paquet integrat i paquet definit per l'usuari.

Hi ha molts paquets integrats com java, lang, awt, javax, swing, net, io, util, sql, etc.

Aquí tindrem l'aprenentatge detallat de la creació i l'ús de paquets definits per l'usuari.

estricte a int

Avantatge del paquet Java

1) El paquet Java s'utilitza per categoritzar les classes i les interfícies de manera que es puguin mantenir fàcilment.

2) El paquet Java proporciona protecció d'accés.

3) El paquet Java elimina la col·lisió de noms.


Exemple senzill de paquet java

El paraula clau del paquet s'utilitza per crear un paquet en java.

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

Com compilar el paquet java

Si no utilitzeu cap IDE, heu de seguir el sintaxi donat a continuació:

 javac -d directory javafilename 

Per exemple

 javac -d . Simple.java 

El commutador -d especifica la destinació on posar el fitxer de classe generat. Podeu utilitzar qualsevol nom de directori com /home (en el cas de Linux), d:/abc (en el cas de Windows), etc. Si voleu mantenir el paquet dins del mateix directori, podeu utilitzar . (punt).


Com executar el programa de paquets java

Heu d'utilitzar un nom totalment qualificat, p. mypack.Simple etc per executar la classe.


Per compilar: javac -d . Simple.java
Córrer: java mypack.Simple
 Output:Welcome to package 
El -d és un commutador que indica al compilador on ha de posar el fitxer de classe, és a dir, representa la destinació. El . representa la carpeta actual.

Com accedir al paquet des d'un altre paquet?

Hi ha tres maneres d'accedir al paquet des de fora del paquet.

  1. importar paquet.*;
  2. import package.classname;
  3. nom totalment qualificat.

1) Utilitzant packagename.*

Si utilitzeu package.* llavors totes les classes i interfícies d'aquest paquet seran accessibles, però no els subpaquets.

La paraula clau import s'utilitza per fer que les classes i la interfície d'un altre paquet sigui accessible al paquet actual.

Exemple de paquet que importa el nom del paquet.*

 //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) Utilitzant packagename.classname

Si importeu package.classname només serà accessible la classe declarada d'aquest paquet.

Exemple de paquet per 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) Utilitzant un nom totalment qualificat

Si utilitzeu un nom complet, només serà accessible la classe declarada d'aquest paquet. Ara no cal importar. Però heu d'utilitzar un nom totalment qualificat cada vegada que accediu a la classe o la interfície.

S'utilitza generalment quan dos paquets tenen el mateix nom de classe, p. Els paquets java.util i java.sql contenen la classe Date.

Exemple de paquet per importació de nom complet

 //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 

Nota: si importeu un paquet, els subpaquets no s'importaran.

Si importeu un paquet, s'importaran totes les classes i la interfície d'aquest paquet, excepte les classes i interfícies dels subpaquets. Per tant, també heu d'importar el subpaquet.


Nota: La seqüència del programa ha de ser paquet, importar i després classe.


Subpaquet en java

El paquet dins del paquet s'anomena subpaquet . S'hauria de crear per categoritzar encara més el paquet .

Prenguem un exemple, Sun Microsystem ha definit un paquet anomenat java que conté moltes classes com System, String, Reader, Writer, Socket, etc. Aquestes classes representen un grup particular, p. Les classes Reader i Writer són per a l'operació d'entrada/sortida, les classes Socket i ServerSocket són per a xarxes, etc., etc. Per tant, Sun ha subcategoritzat el paquet java en subpaquets com lang, net, io, etc. i ha posat les classes relacionades amb l'entrada/sortida al paquet io, les classes Server i ServerSocket en paquets net, etc.

L'estàndard per definir el paquet és domain.company.package, p. ex. com.javatpoint.bean o org.sssit.dao.

Exemple de subpaquet

 package com.javatpoint.core; class Simple{ public static void main(String args[]){ System.out.println('Hello subpackage'); } } 
Per compilar: javac -d . Simple.java
Córrer: java com.javatpoint.core.Simple
 Output:Hello subpackage 

Com enviar el fitxer de classe a un altre directori o unitat?

Hi ha un escenari, vull posar el fitxer de classe del fitxer font A.java a la carpeta de classes de la unitat c:. Per exemple:

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

Per compilar:

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

Córrer:

Per executar aquest programa des del directori e:source, heu d'establir classpath del directori on resideix el fitxer de classe.
e:sources> set classpath=c:classes;.;
e:sources> java mypack.Simple

Una altra manera d'executar aquest programa mitjançant el commutador -classpath de java:

El commutador -classpath es pot utilitzar amb javac i l'eina java.

Per executar aquest programa des del directori e:source, podeu utilitzar el commutador -classpath de java que indica on buscar el fitxer de classe. Per exemple:

caràcter a cadena en java

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

 Output:Welcome to package 

Maneres de carregar els fitxers de classe o els fitxers jar

Hi ha dues maneres de carregar els fitxers de classe temporals i permanents.
  • Temporal
    • Configurant el classpath a l'indicador d'ordres
    • Per commutador -classpath
  • Permanent
    • Configurant el classpath a les variables d'entorn
    • En crear el fitxer jar, que conté tots els fitxers de classe, i copiant el fitxer jar a la carpeta jre/lib/ext.

Regla: només hi pot haver una classe pública en un fitxer font java i s'ha de desar amb el nom de la classe pública.

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

Com posar dues classes públiques en un paquet?

Si voleu posar dues classes públiques en un paquet, tingueu dos fitxers font java que continguin una classe pública, però manteniu el mateix nom del paquet. Per exemple:
 //save as A.java package javatpoint; public class A{} 
 //save as B.java package javatpoint; public class B{} 

Quina és la funció d'importació estàtica de Java5?

Feu clic a la funció d'importació estàtica de Java5.

Què passa amb la classe de paquets?

Feu clic per a la classe del paquet