Pacchetti in Java: come creare e utilizzare i pacchetti in Java?



Questo post sui pacchetti in java ti aiuterà a capire cosa sono i pacchetti, come crearli e usarli in Java per essere programmatori Java efficienti.

Uno dei più innovativi è il concetto di pacchetti.I pacchetti in Java sono un modo per incapsulare un gruppo di classi, interfacce, enumerazioni, annotazioni e sotto-pacchetti. Concettualmente, puoi pensare ai pacchetti java come simili a diverse cartelle sul tuo computer. In questo tutorial, tratteremo le basi dei pacchetti in

Di seguito sono elencati gli argomenti trattati in questo articolo:





Cos'è il pacchetto in Java?

Il pacchetto Java è un meccanismo per raggruppare tipi simili di classi, interfacce e sottoclassi collettivamente in base alla funzionalità. Quando il software è scritto in , può essere composto da centinaia o addirittura migliaia di classi individuali. ioHa senso mantenere le cose organizzate inserendo classi e interfacce correlate nei pacchetti.

L'utilizzo di pacchetti durante la codifica offre molti vantaggi come:



    • Riusabilità: Le classi contenute nei pacchetti di un altro programma possono essere facilmente riutilizzate
    • Conflitti di nome: Pacchettiaiutaci a identificare in modo univoco una classe, ad esempio, possiamo avere company.sales.Employee e azienda.marketing.Dipendente classi
    • Accesso controllato: Offerte protezione dell'accesso come pclassi ruotate, classi predefinite e classi private
    • Incapsulamento dei dati : Loro pfornisce un modo per nascondere le classi, impedendo ad altri programmi di accedere alle classi che sono destinate solo per uso interno
    • Manutenzione: Con i pacchetti,puoi organizzare meglio il tuo progetto e individuare facilmente le classi correlate

È una buona pratica utilizzare i pacchetti durante la codifica in Java. Come programmatore, puoicapire facilmente il file , interfacce, enumerazioni e annotazioni correlate. Abbiamo due tipi di pacchetti in java.

come invertire un numero intero in python

Tipi di pacchetti in Java

A seconda che il pacchetto sia definito dall'utente o meno, i pacchetti sono suddivisi in due categorie:

  1. Pacchetti integrati
  2. Pacchetti definiti dall'utente

Pacchetti integrati

I pacchetti incorporati o predefiniti sono quelli che fanno parte di (Java Development Kit) per semplificare il compito del programmatore Java. Sono costituiti da un numero enorme di classi e interfacce predefinite che fanno parte delle API Java. Alcuni dei pacchetti integrati comunemente usati sono java.lang, java.io, java.util, java.applet, ecc. Ecco un semplice programma che utilizza un pacchetto integrato.



pacchetto Edureka import java.util.ArrayList classe BuiltInPackage {public static void main (String [] args) {ArrayList myList = new ArrayList (3) myList.add (3) myList.add (2) myList.add (1) System. out.println ('Gli elementi della lista sono:' + myList)}}

Produzione:

Gli elementi della lista sono: [3, 2, 1]

La classe ArrayList appartiene al pacchetto java.util. Per usarlo, dobbiamo importare il pacchetto utilizzando l'istruzione import. La prima riga del codice importa java.util.ArrayList importa il pacchetto java.util e utilizza che è presente nel pacchetto secondario util.

Pacchetti definiti dall'utente

I pacchetti definiti dall'utente sono quelli sviluppati dagli utenti per raggruppare classi, interfacce e sotto-pacchetti correlati. Con l'aiuto di un programma di esempio, vediamo come creare pacchetti, compilare programmi Java all'interno dei pacchetti ed eseguirli.

Creazione di un pacchetto in Java

La creazione di un pacchetto in Java è un'operazione molto semplice. Scegli un nome per il pacchetto e includi un file pacchetto comando come prima istruzione nel file di origine Java. Il file di origine java può contenere le classi, le interfacce, le enumerazioni e i tipi di annotazioni che si desidera includere nel pacchetto.Ad esempio, la seguente istruzione crea un pacchetto denominato MyPackage.

pacchetto MyPackage

L'istruzione package specifica semplicemente a quale pacchetto appartengono le classi definite.

Nota: Se ometti l'istruzione del pacchetto, i nomi delle classi vengono inseriti nel pacchetto predefinito, che non ha nome. Sebbene il pacchetto predefinito vada bene per i programmi brevi, è inadeguato per le applicazioni reali.

Includere una classe nel pacchetto Java

Percreare una classe all'interno di un pacchetto, dovrestidichiarare il nome del pacchetto come prima istruzione del programma. Quindi includi la classe come parte del pacchetto. Ma ricorda che una classe può avere solo una dichiarazione di pacchetto. Ecco un semplice programma per comprendere il concetto.

pacchetto MyPackage public class Compare {int num1, num2 Compare (int n, int m) {num1 = n num2 = m} public void getmax () {if (num1> num2) {System.out.println ('Valore massimo di due i numeri sono '+ num1)} else {System.out.println (' Il valore massimo di due numeri è '+ num2)}} public static void main (String args []) {Compare current [] = new Compare [3] current [1] = nuovo Confronta (5, 10) corrente [2] = nuovo Confronta (123, 120) per (int i = 1 i<3 i++) { current[i].getmax() } } } 

Produzione:

Il valore massimo di due numeri è 10 Il valore massimo di due numeri è 123

Come puoi vedere, ho dichiarato un pacchetto chiamato MyPackage e ho creato una classe Compare all'interno di quel pacchetto. Java utilizza le directory del file system per memorizzare i pacchetti. Quindi, questo programma verrebbe salvato in un file come Compare.java e verrà archiviato nella directory denominata MyPackage. Quando il file viene compilato, Java creerà un file .classe file e archiviarlo nella stessa directory. Ricorda che il nome del pacchetto deve essere lo stesso della directory in cui viene salvato questo file.

Ti starai chiedendo come utilizzare questa classe Compare da una classe in un altro pacchetto?

Creazione di una classe all'interno del pacchetto durante l'importazione di un altro pacchetto

Bene, è abbastanza semplice. Devi solo importarlo. Una volta importato, puoi accedervi tramite il suo nome. Ecco un programma di esempio che dimostra il concetto.

pacchetto Edureka import MyPackage.Compare public class Demo {public static void main (String args []) {int n = 10, m = 10 Compare current = new Compare (n, m) if (n! = m) {current.getmax ()} else {System.out.println ('Entrambi i valori sono uguali')}}}

Produzione:

Entrambi i valori sono gli stessi

Ho prima dichiarato il pacchetto Edureka , quindi ha importato la classe Confrontare dal pacchetto MyPackage. Quindi, l'ordinequando creiamo una classe all'interno di un pacchetto durante l'importazione di un altro pacchetto è,

  • Dichiarazione del pacchetto
  • Importazione del pacchetto

Bene, se non vuoi usare l'istruzione import, c'è un'altra alternativa per accedere a un file di classe del pacchetto da un altro pacchetto. Puoi semplicemente utilizzare un nome completo durante l'importazione di un file .

Utilizzo di un nome completo durante l'importazione di una classe

Ecco un esempio per comprendere il concetto. Userò lo stesso pacchetto che ho dichiarato in precedenza nel blog, MyPackage .

pacchetto Edureka public class Demo {public static void main (String args []) {int n = 10, m = 11 // Usando il nome completo invece di import MyPackage.Compare current = new MyPackage.Compare (n, m) if ( n! = m) {current.getmax ()} else {System.out.println ('Entrambi i valori sono uguali')}}}

Produzione:

Il valore massimo di due numeri è 11

Nella classe Demo, invece di importare il pacchetto, ho usato il nome completo come MyPackage.Compare per crearne l'oggetto. Dato che stiamo parlando di importazione di pacchetti, potresti anche controllare il concetto di importazione statica in Java.

Importazione statica in Java

La funzionalità di importazione statica è stata introdotta in dalla versione 5. Facilita al programmatore Java l'accesso a qualsiasi staticomembro di una classe direttamente senza utilizzare il nome completo.

pacchetto MyPackage import static java.lang.Math. * // static import import static java.lang.System. * // static import public class StaticImportDemo {public static void main (String args []) {double val = 64.0 double sqroot = sqrt (val) // Accedi al metodo sqrt () direttamente out.println ('Sq. root of' + val + 'is' + sqroot) // We don't need to use 'System.out}}
 Produzione: 
Mq. root di 64.0 è 8.0

Sebbene l'utilizzo dell'importazione statica implichi meno codifica, un uso eccessivo potrebbe rendere il programma illeggibile e non gestibile. Passiamo ora all'argomento successivo, il controllo degli accessi nei pacchetti.

Protezione dell'accesso nei pacchetti Java

Potresti essere a conoscenza di vari aspetti del meccanismo di controllo dell'accesso di Java e dei suoi specificatori di accesso . I pacchetti in Java aggiungono un'altra dimensione al controllo dell'accesso. Sia le classi che i pacchetti sono un mezzo di incapsulamento dei dati . Mentre i pacchetti agiscono come contenitori per classi e altri pacchetti subordinati, le classi agiscono come contenitori per dati e codice. A causa di questa interazione tra pacchetti e classi, i pacchetti Java affrontano quattro categorie di visibilità per i membri della classe:

  • Sottoclassi nello stesso pacchetto
  • Non sottoclassi nello stesso pacchetto
  • Sottoclassi in diversi pacchetti
  • Classi che non sono né nello stesso pacchetto né sottoclassi

La tabella seguente fornisce un fileimmagine reale di quale tipo di accesso è possibile e quale no quando si utilizzano pacchetti in Java:

Privato Nessun modificatore Protetto Pubblico

Stessa classe

Stesse sottoclassi di pacchetto

quali sono i vincoli in sql

No

Stesso pacchetto non sottoclassi

No

Diverse sottoclassi di pacchetti

No

No

Pacchetti diversi non sottoclassi

No

No

No

Possiamo semplificare i dati nella tabella sopra come segue:

  1. Tutto ciò che è dichiarato pubblico è accessibile da qualsiasi luogo
  2. Qualsiasi cosa dichiarata privata può essere vista solo all'interno di quella classe
  3. Se l'identificatore di accesso non è menzionato, un elemento è visibile alle sottoclassi così come ad altre classi nello stesso pacchetto
  4. Infine, qualsiasi elemento protetto dichiarato può essere visto al di fuori del pacchetto corrente, ma solo per le classi che sottoclassano direttamente la classe

In questo modo, i pacchetti Java forniscono il controllo dell'accesso alle classi. Bene, questo riassume il concetto di pacchetti in Java. Ecco alcuni punti che dovresti tenere a mente quando usi i pacchetti in .

Punti da ricordare

  • Ogni classe fa parte di un pacchetto. Se ometti l'istruzione del pacchetto, i nomi delle classi vengono inseriti nel pacchetto predefinito
  • Una classe può avere una sola istruzione di pacchetto ma può avere più di un'istruzione di importazione di pacchetto
  • Il nome del pacchetto deve essere lo stesso della directory in cui viene salvato il file
  • Quando si importa un altro pacchetto, la dichiarazione del pacchetto deve essere la prima istruzione, seguita dall'importazione del pacchetto

Bene, questo ci porta alla fine di questo articolo 'Pacchetti in Java'. Abbiamo imparatocos'è un pacchetto e perché dovremmo usarli. Non c'è dubbio che il pacchetto Java sia una delle parti più importanti per i programmatori Java efficienti. Non solo aggiorna lo stile di codifica del programmatore, ma riduce anche molto lavoro aggiuntivo.

Se hai trovato questo articolo su 'Pacchetti in Java', controlla il da Edureka, una società di formazione online affidabile con una rete di oltre 250.000 studenti soddisfatti sparsi in tutto il mondo. Siamo qui per aiutarti in ogni fase del tuo viaggio, per diventare oltre a queste domande di intervista Java, abbiamo creato un curriculum progettato per studenti e professionisti che vogliono essere uno sviluppatore Java.