logo

Balíček Java

  1. Balíček Java
  2. Příklad balíčku
  3. Přístup k balíčku
    1. Podle názvu importu balíčku.*
    2. Importem packagename.classname
    3. Plně kvalifikovaným jménem
  4. Dílčí balíček
  5. Odeslání souboru třídy do jiného adresáře
  6. -přepínač classpath
  7. 4 způsoby, jak načíst soubor třídy nebo soubor jar
  8. Jak vložit dvě veřejné třídy do balíčku
  9. Statický import
  10. Třída balíčku

A java balíček je skupina podobných typů tříd, rozhraní a dílčích balíčků.

Balíček v jazyce Java lze kategorizovat ve dvou formách, vestavěný balíček a balíček definovaný uživatelem.

Existuje mnoho vestavěných balíčků, jako je java, lang, awt, javax, swing, net, io, util, sql atd.

Zde se podrobně naučíme vytvářet a používat uživatelsky definované balíčky.

rozdíl tygří lev

Výhoda Java Package

1) Balíček Java se používá ke kategorizaci tříd a rozhraní, aby je bylo možné snadno udržovat.

2) Balíček Java poskytuje ochranu přístupu.

3) Balíček Java odstraňuje kolizi pojmenování.


Jednoduchý příklad java balíčku

The klíčové slovo balíček se používá k vytvoření balíčku v jazyce Java.

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

Jak zkompilovat java balíček

Pokud nepoužíváte žádné IDE, musíte postupovat podle syntax Níže uvedené:

 javac -d directory javafilename 

Pro příklad

 javac -d . Simple.java 

Přepínač -d určuje cíl, kam umístit vygenerovaný soubor třídy. Můžete použít libovolný název adresáře jako /home (v případě Linuxu), d:/abc (v případě windows) atd. Pokud chcete balíček ponechat ve stejném adresáři, můžete použít . (tečka).


Jak spustit program balíčků java

Musíte použít plně kvalifikovaný název, např. mypack.Simple atd. ke spuštění třídy.


Sestavit: javac -d . Jednoduché.java
Běžet: java mypack.Jednoduché
 Output:Welcome to package 
-d je přepínač, který říká kompilátoru, kam má umístit soubor třídy, tj. představuje cíl. . představuje aktuální složku.

Jak získat přístup k balíčku z jiného balíčku?

Existují tři způsoby, jak získat přístup k balíčku zvenčí.

  1. importovat balíček.*;
  2. importovat balíček.název třídy;
  3. plně kvalifikované jméno.

1) Pomocí názvu balíčku.*

Pokud použijete package.*, pak budou přístupné všechny třídy a rozhraní tohoto balíčku, ale ne podbalíčky.

Klíčové slovo import se používá ke zpřístupnění tříd a rozhraní jiného balíčku pro aktuální balíček.

Příklad balíčku, který importuje název balíčku.*

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

Pokud importujete package.classname, pak bude přístupná pouze deklarovaná třída tohoto balíčku.

Příklad balíčku importem 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) Použití plně kvalifikovaného jména

Pokud použijete plně kvalifikovaný název, bude přístupná pouze deklarovaná třída tohoto balíčku. Nyní již není třeba importovat. Ale musíte použít plně kvalifikovaný název pokaždé, když přistupujete ke třídě nebo rozhraní.

Obecně se používá, když dva balíčky mají stejný název třídy, např. Balíčky java.util a java.sql obsahují třídu Date.

Příklad balíčku importem plně kvalifikovaného jména

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

Poznámka: Pokud importujete balíček, dílčí balíčky nebudou importovány.

Pokud importujete balíček, budou importovány všechny třídy a rozhraní tohoto balíčku s výjimkou tříd a rozhraní dílčích balíčků. Proto je nutné importovat i dílčí balíček.


Poznámka: Sekvence programu musí být balíček, poté import a poté třída.


Dílčí balíček v jazyce Java

Balíček uvnitř balíčku se nazývá dílčí balíček . Mělo by být vytvořeno pro další kategorizaci balíčku .

Vezměme si příklad, Sun Microsystem definoval balíček s názvem java, který obsahuje mnoho tříd jako System, String, Reader, Writer, Socket atd. Tyto třídy představují konkrétní skupinu, např. Třídy Reader a Writer jsou určeny pro operace Input/Output, třídy Socket a ServerSocket jsou určeny pro sítě atd. a tak dále. Sun tedy podkategorizoval java balíček do podbalíčků, jako jsou lang, net, io atd. a umístil třídy související se vstupem/výstupem do balíčku io, třídy Server a ServerSocket do balíčků net a tak dále.

Standardem pro definování balíčku je doména.firma.balíček např. com.javatpoint.bean nebo org.sssit.dao.

Příklad dílčího balíčku

 package com.javatpoint.core; class Simple{ public static void main(String args[]){ System.out.println('Hello subpackage'); } } 
Sestavit: javac -d . Jednoduché.java
Běžet: java com.javatpoint.core.Simple
 Output:Hello subpackage 

Jak odeslat soubor třídy do jiného adresáře nebo jednotky?

Existuje scénář, chci umístit soubor třídy zdrojového souboru A.java do složky tříd na disku c:. Například:

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

Sestavit:

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

Běžet:

Chcete-li spustit tento program z adresáře e:source, musíte nastavit classpath adresáře, kde je umístěn soubor třídy.
e:sources> set classpath=c:classes;.;
e:sources> java mypack.Simple

Další způsob, jak spustit tento program pomocí přepínače -classpath v jazyce Java:

Přepínač -classpath lze použít s nástroji javac a java.

Chcete-li spustit tento program z adresáře e:source, můžete použít přepínač -classpath v jazyce Java, který říká, kde hledat soubor třídy. Například:

zřetězit java řetězec

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

 Output:Welcome to package 

Způsoby, jak načíst soubory třídy nebo soubory jar

Existují dva způsoby, jak načíst soubory třídy dočasné a trvalé.
  • Dočasný
    • Nastavením cesty ke třídě v příkazovém řádku
    • Pomocí přepínače -classpath
  • Trvalý
    • Nastavením cesty třídy v proměnných prostředí
    • Vytvořením souboru jar, který obsahuje všechny soubory třídy, a zkopírováním souboru jar do složky jre/lib/ext.

Pravidlo: Ve zdrojovém souboru java může být pouze jedna veřejná třída a musí být uložena pod názvem veřejné třídy.

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

Jak vložit dvě veřejné třídy do balíčku?

Pokud chcete do balíčku vložit dvě veřejné třídy, mějte dva zdrojové soubory java obsahující jednu veřejnou třídu, ale ponechte stejný název balíčku. Například:
 //save as A.java package javatpoint; public class A{} 
 //save as B.java package javatpoint; public class B{} 

Co je funkce statického importu Java5?

Klepněte na funkci Statický import Java5.

A co třída balíčku?

Klikněte pro třídu balíčku