Какво е пакет в Java?
PACKAGE в Java е колекция от класове, подпакети и интерфейси. Той помага да се организират вашите класове в структура на папки и да улесни намирането и използването им. По-важното е, че помага да се подобри повторната употреба на кода.
Всеки пакет в Java има своето уникално име и организира своите класове и интерфейси в отделно пространство от имена или група от имена.
Въпреки че интерфейсите и класовете с едно и също име не могат да се появят в един и същ пакет, те могат да се появят в различни пакети. Това е възможно чрез присвояване на отделно пространство от имена на всеки Java пакет.
Синтаксис:-
package nameOfPackage;
Следващото видео ви превежда през стъпките за създаване на пакет.
Щракнете тук, ако видеоклипът не е достъпен
Нека изучим пакет с пример. Дефинираме клас и обект и по-късно го компилираме в нашия пакет p1. След компилацията изпълняваме кода като Java пакет.
Как да създам пакет?
Създаването на пакет е проста задача, както следва
- Изберете името на пакета
- Включете командата на пакета като първи ред код във вашия изходен файл на Java.
- Изходният файл съдържа класовете, интерфейсите и т.н., които искате да включите в пакета
- Компилирайте, за да създадете Java пакетите
Стъпка 1) Обмислете следната пакетна програма в Java:
package p1;class c1(){public void m1(){System.out.println("m1 of c1");}public static void main(string args[]){c1 obj = new c1();obj.m1();}}
Тук,
- За да поставите клас в пакет, на първия ред от кода дефинирайте пакет p1
- Създайте клас c1
- Дефиниране на метод m1, който отпечатва линия.
- Определяне на основния метод
- Създаване на обект от клас c1
- Метод на повикване m1
Стъпка 2) В следващата стъпка запазете този файл като demo.java
Стъпка 3) В тази стъпка ние компилираме файла.
Компилацията е завършена. Създава се файл с клас c1. Не е създаден обаче пакет? Следващата стъпка има решението
Стъпка 4) Сега трябва да създадем пакет, използвайте командата
javac -d . demo.java
Тази команда принуждава компилатора да създаде пакет.
В "." оператор представлява текущата работна директория.
Стъпка 5) Когато изпълнявате кода, той създава пакет p1. Когато отворите пакета java p1 вътре, ще видите файла c1.class.
Стъпка 6) Компилирайте същия файл, като използвате следния код
javac -d… demo.java
Тук "..." показва родителската директория. В нашия случай файлът ще бъде запазен в родителска директория, която е C Drive
Файл, записан в родителска директория, когато се изпълни горният код.
Стъпка 7) Да кажем, че искате да създадете подпакет p2 в рамките на нашия съществуващ java пакет p1. След това ще модифицираме нашия код като
package p1.p2;class c1{public void m1() {System.out.println("m1 of c1");}}
Стъпка 8) Компилирайте файла
Както се вижда на екрана по-долу, той създава подпакет p2 с клас c1 вътре в пакета.
Стъпка 9) За изпълнение на кода се споменава напълно квалифицираното име на класа, т.е. името на пакета, последвано от името на подпакета, последвано от името на класа -
java p1.p2.c1
По този начин се изпълнява пакетът и дава изхода като "m1 на c1" от кодовия файл.
Как да импортирам пакет
За да създадете обект от клас (включен в пакет), във вашия код трябва да използвате напълно квалифицираното му име.
Пример:
java.awt.event.actionListner object = new java.awt.event.actionListner();
Но може да стане досадно да въведете името на пътя на пакета, разделено с дълги точки, за всеки клас, който искате да използвате. Вместо това се препоръчва да използвате оператора за импортиране.
Синтаксис
import packageName;
След като бъде импортиран, можете да използвате класа, без да споменавате пълното му име.
import java.awt.event.*; // * signifies all classes in this package are importedimport javax.swing.JFrame // here only the JFrame class is imported//UsageJFrame f = new JFrame; // without fully qualified name.
Пример : За импортиране на пакет
Стъпка 1) Копирайте кода в редактор.
package p3;import p1.*; //imports classes only in package p1 and NOT in the sub-package p2class c3{public void m3(){System.out.println("Method m3 of Class c3");}public static void main(String args[]){c1 obj1 = new c1();obj1.m1();}}
Стъпка 2) Запазете файла като Demo2.java. Компилирайте файла, като използвате командата javac -d. Demo2.java
Стъпка 3) Изпълнете кода, като използвате командата java p3.c3
Пакети - забележки:
- За да се избегнат конфликти при именуване, на пакетите се дават имена на името на домейна на компанията в обратен пример: com.guru99. com.microsoft, com.infosys и др.
- Когато името на пакета не е посочено, клас е в пакета по подразбиране (текущата работна директория) и на самия пакет не се дава име. Следователно успяхте да изпълните задачи по-рано.
- Докато създавате пакет, трябва да се внимава, че изявлението за създаване на пакет трябва да бъде написано преди други оператори за импортиране
// not allowedimport package p1.*;package p3;//correct syntaxpackage p3;import package p1.*;
пакетът java.lang се импортира по подразбиране за всеки клас, който създавате в Java.
API на Java е много обширен, съдържа класове, които могат да изпълняват почти всички ваши задачи по програмиране от манипулация на структурата на данни до работа в мрежа. По-често ще използвате API файлове в кода си. Можете да видите документацията за API тук.