Sök…


Introduktion

paket i java används för gruppklass och gränssnitt. Detta hjälper utvecklare att undvika konflikter när det finns ett stort antal klasser. Om vi använder detta paket klasserna kan vi skapa en klass / gränssnitt med samma namn i olika paket. Genom att använda paket kan vi importera biten igen i en annan klass. Det finns många inbyggda paket i java som> 1.java.util> 2.java.lang> 3.java.io Vi kan definiera våra egna användardefinierade paket .

Anmärkningar

Paket ger åtkomstskydd.

paketförklaring måste vara den första raden i källkoden. Det kan bara finnas ett paket i en källfil.

Med hjälp av paket kan konflikter mellan olika moduler undvikas.

Använd paket för att skapa klasser med samma namn

Första test.klass:

package foo.bar

public class Test {

}

Testa också klass i ett annat paket

package foo.bar.baz

public class Test {

}

Ovanstående är bra eftersom de två klasserna finns i olika paket.

Använda paketskyddat räckvidd

Om du inte tillhandahåller en åtkomstmodifiering i Java är standardomfånget för variabler paketskyddad nivå. Detta innebär att klasser kan komma åt variablerna för andra klasser i samma paket som om dessa variabler var offentligt tillgängliga.

package foo.bar

public class ExampleClass {
    double exampleNumber;
    String exampleString;

    public ExampleClass() {
        exampleNumber = 3;
        exampleString = "Test String";
    }
    //No getters or setters
}

package foo.bar

public class AnotherClass {
    ExampleClass clazz = new ExampleClass();

    System.out.println("Example Number: " + clazz.exampleNumber);
    //Prints Example Number: 3
    System.out.println("Example String: " + clazz.exampleString);
    //Prints Example String: Test String
}

Den här metoden fungerar inte för en klass i ett annat paket:

package baz.foo

public class ThisShouldNotWork {
    ExampleClass clazz = new ExampleClass();

    System.out.println("Example Number: " + clazz.exampleNumber);
    //Throws an exception
    System.out.println("Example String: " + clazz.exampleString);
    //Throws an exception
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow