Java -pakketten


Java-pakketten & API

Een pakket in Java wordt gebruikt om gerelateerde klassen te groeperen. Zie het als een map in een bestandsmap . We gebruiken pakketten om naamconflicten te voorkomen en om een ​​beter onderhoudbare code te schrijven. Pakketten zijn onderverdeeld in twee categorieën:

  • Ingebouwde pakketten (pakketten van de Java API)
  • Door de gebruiker gedefinieerde pakketten (maak uw eigen pakketten)

Ingebouwde pakketten

De Java API is een bibliotheek van vooraf geschreven klassen, die gratis te gebruiken zijn, opgenomen in de Java Development Environment.

De bibliotheek bevat componenten voor het beheren van invoer, databaseprogrammering en nog veel meer. De volledige lijst is te vinden op de website van Oracle: https://docs.oracle.com/javase/8/docs/api/ .

De bibliotheek is onderverdeeld in pakketten en klassen . Dit betekent dat je ofwel een enkele klasse kunt importeren (samen met zijn methoden en attributen), of een heel pakket dat alle klassen bevat die tot het gespecificeerde pakket behoren.

Om een ​​klas of een pakket uit de bibliotheek te gebruiken, moet je het import trefwoord gebruiken:

Syntaxis

import package.name.Class;   // Import a single class
import package.name.*;   // Import the whole package

Een klasse importeren

Als je een klasse vindt die je wilt gebruiken, bijvoorbeeld de Scannerklasse, die wordt gebruikt om gebruikersinvoer te krijgen , schrijf dan de volgende code:

Voorbeeld

import java.util.Scanner;

In het bovenstaande voorbeeld java.utilis een pakket, terwijl Scannerhet een klasse van het java.utilpakket is.

Om de Scannerklasse te gebruiken, maakt u een object van de klasse aan en gebruikt u een van de beschikbare methoden die in de Scannerklassendocumentatie staan. In ons voorbeeld gebruiken we de nextLine()methode die wordt gebruikt om een ​​volledige regel te lezen:

Voorbeeld

De Scannerklasse gebruiken om gebruikersinvoer te krijgen:

import java.util.Scanner;

class MyClass {
  public static void main(String[] args) {
    Scanner myObj = new Scanner(System.in);
    System.out.println("Enter username");

    String userName = myObj.nextLine();
    System.out.println("Username is: " + userName);
  }
}



Een pakket importeren

Er zijn veel pakketten om uit te kiezen. In het vorige voorbeeld hebben we de Scannerklasse uit het java.utilpakket gebruikt. Dit pakket bevat ook datum- en tijdfaciliteiten, een generator voor willekeurige getallen en andere hulpprogramma's.

Om een ​​heel pakket te importeren, sluit u de zin af met een sterretje ( *). In het volgende voorbeeld worden ALLE klassen in het java.utilpakket geïmporteerd:

Voorbeeld

import java.util.*;


Door de gebruiker gedefinieerde pakketten

Om uw eigen pakket te maken, moet u begrijpen dat Java een bestandssysteemmap gebruikt om ze op te slaan. Net als mappen op uw computer:

Voorbeeld

└── root
  └── mypack
    └── MyPackageClass.java

Gebruik het packagetrefwoord om een ​​pakket te maken:

MijnPakketKlasse.java

package mypack;
class MyPackageClass {
  public static void main(String[] args) {
    System.out.println("This is my package!");
  }
}

Sla het bestand op als MyPackageClass.java en compileer het:

C:\Users\Your Name>javac MyPackageClass.java

Stel vervolgens het pakket samen:

C:\Users\Your Name>javac -d . MyPackageClass.java

Dit dwingt de compiler om het "mypack"-pakket te maken.

Het -dsleutelwoord geeft de bestemming aan waar het klassenbestand moet worden opgeslagen. U kunt elke mapnaam gebruiken, zoals c:/user (windows), of, als u het pakket in dezelfde map wilt houden, kunt u het puntteken " ." gebruiken, zoals in het bovenstaande voorbeeld.

Opmerking: de pakketnaam moet in kleine letters worden geschreven om conflicten met klassenamen te voorkomen.

Toen we het pakket in het bovenstaande voorbeeld compileerden, werd een nieuwe map gemaakt, genaamd "mypack".

Om het MyPackageClass.java -bestand uit te voeren, schrijft u het volgende:

C:\Users\Your Name>java mypack.MyPackageClass

De uitvoer zal zijn:

This is my package!