- Јава пакет
- Пример пакета
- Приступ пакету
- Подпакет
- Слање датотеке класе у други директоријум
- -цласспатх прекидач
- 4 начина за учитавање датотеке класе или јар датотеке
- Како ставити две јавне класе у пакет
- Статички увоз
- Класа пакета
А јава пакет је група сличних типова класа, интерфејса и подпакета.
Пакет у Јави се може категорисати у два облика, уграђени пакет и кориснички дефинисани пакет.
Постоји много уграђених пакета као што су јава, ланг, авт, јавак, свинг, нет, ио, утил, скл итд.
Овде ћемо имати детаљно учење о креирању и коришћењу кориснички дефинисаних пакета.
асции од а у јава
Предност Јава пакета
1) Јава пакет се користи за категоризацију класа и интерфејса тако да се могу лако одржавати.
2) Јава пакет пружа заштиту приступа.
3) Јава пакет уклања колизију именовања.
Једноставан пример јава пакета
Тхе кључна реч пакета се користи за креирање пакета у јава.
//save as Simple.java package mypack; public class Simple{ public static void main(String args[]){ System.out.println('Welcome to package'); } }
Како саставити Јава пакет
Ако не користите никакав ИДЕ, морате да пратите синтаксе у наставку:
javac -d directory javafilename
За пример
javac -d . Simple.java
Прекидач -д одређује одредиште где треба ставити генерисану датотеку класе. Можете користити било које име директоријума као што је /хоме (у случају Линука), д:/абц (у случају Виндовс-а) итд. Ако желите да задржите пакет у истом директоријуму, можете користити . (тачка).
Како покренути јава пакет програм
Морате користити потпуно квалификовано име, нпр. мипацк.Симпле итд. за покретање класе.
Сакупити: јавац -д . Симпле.јава |
Трчати: јава мипацк.Симпле |
Output:Welcome to package
-д је прекидач који говори компајлеру где да стави датотеку класе, тј. представља одредиште. Тхе . представља тренутну фасциклу. |
Како приступити пакету из другог пакета?
Постоје три начина за приступ пакету изван пакета.
- увоз пакета.*;
- импорт пацкаге.цласснаме;
- потпуно квалификовано име.
1) Коришћење назива пакета.*
Ако користите пацкаге.* онда ће све класе и интерфејси овог пакета бити доступни, али не и подпакетима.
Кључна реч импорт се користи да би се класе и интерфејс другог пакета учинили доступним тренутном пакету.
Пример пакета који увози име пакета.*
//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) Коришћење име пакета.име класе
Ако увезете пацкаге.цласснаме, тада ће бити доступна само декларисана класа овог пакета.
Пример пакета за увоз пакета.име класе
//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) Коришћење потпуно квалификованог имена
Ако користите потпуно квалификовано име, биће доступна само декларисана класа овог пакета. Сада нема потребе за увозом. Али морате да користите потпуно квалификовано име сваки пут када приступате класи или интерфејсу.
Обично се користи када два пакета имају исто име класе, нпр. јава.утил и јава.скл пакети садрже класу Дате.
Пример пакета по увозу потпуно квалификованог имена
//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
Напомена: Ако увезете пакет, подпакети неће бити увезени.
Ако увезете пакет, све класе и интерфејс тог пакета ће бити увезени изузев класа и интерфејса потпакета. Дакле, морате да увезете и потпакет.
Напомена: Секвенца програма мора бити пакет па импорт па класа.
Подпакет у Јави
Пакет унутар пакета назива се подпакет . Требало би да се створи да додатно категоризујете пакет .
Узмимо пример, Сун Мицросистем је дефинисао пакет под називом јава који садржи много класа као што су Систем, Стринг, Реадер, Вритер, Соцкет итд. Ове класе представљају одређену групу, нпр. Класе Реадер и Вритер служе за рад на улазу/излазу, класе Соцкет и СерверСоцкет су за умрежавање итд и тако даље. Дакле, Сун је подкатегорисао јава пакет у подпакете као што су ланг, нет, ио итд. и ставио улазно/излазне класе у ио пакет, класе Сервер и СерверСоцкет у нет пакете и тако даље.
Стандард дефинисања пакета је домен.компанија.пакет нпр. цом.јаватпоинт.беан или орг.сссит.дао.
Пример потпакета
package com.javatpoint.core; class Simple{ public static void main(String args[]){ System.out.println('Hello subpackage'); } }
Сакупити: јавац -д . Симпле.јава |
Трчати: јава цом.јаватпоинт.цоре.Симпле |
Output:Hello subpackage
Како послати датотеку класе у други директориј или диск?
Постоји сценарио, желим да ставим датотеку класе изворне датотеке А.јава у фасциклу цлассес диска ц:. На пример:
//save as Simple.java package mypack; public class Simple{ public static void main(String args[]){ System.out.println('Welcome to package'); } }
Сакупити:
е:соурцес> јавац -д ц:цлассес Симпле.јава
Трчати:
Да бисте покренули овај програм из е:соурце директоријума, потребно је да поставите путању до директоријума у коме се налази датотека класе. |
е:соурцес> сет цласспатх=ц:цлассес;.; |
е:соурцес> јава мипацк.Симпле |
Други начин да покренете овај програм помоћу -цласспатх прекидача јава:
Прекидач -цласспатх се може користити са јавац и јава алатом.
Да бисте покренули овај програм из е:соурце директоријума, можете користити -цласспатх прекидач јава који говори где да тражите датотеку класе. На пример:
разлика између бинарног стабла и бинарног стабла претраге
е:соурцес> јава -цласспатх ц:цлассес мипацк.Симпле
Output:Welcome to package
Начини учитавања датотека класе или јар датотека
Постоје два начина да се датотеке класе учитају привремено и трајно. |
- Привремени
- Постављањем путање класе у командној линији
- Би -цласспатх прекидач
- Стални
- Постављањем путање класе у променљиве окружења
- Креирањем јар датотеке која садржи све датотеке класа и копирањем јар датотеке у фасциклу јре/либ/ект.
Правило: Може постојати само једна јавна класа у јава изворној датотеци и она мора бити сачувана под именом јавне класе.
//save as C.java otherwise Compilte Time Error class A{} class B{} public class C{}
Како ставити два јавна часа у пакет?
Ако желите да ставите две јавне класе у пакет, имате две јава изворне датотеке које садрже једну јавну класу, али име пакета задржите исто. На пример: |
//save as A.java package javatpoint; public class A{}
//save as B.java package javatpoint; public class B{}
Шта је статичка функција увоза Јава5?
Кликните на функцију статичког увоза Јава5. |
Шта је са класом пакета?
Кликните за класу пакета |