Објектно орјентисано
програмирање
Владимир Филиповић
vladaf@matf.bg.ac.rs
Александар Картељ
kartelj@matf.bg.ac.rs
Сопствени пакети и
унутрашње класе
Владимир Филиповић
vladaf@matf.bg.ac.rs
Александар Картељ
kartelj@matf.bg.ac.rs
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 3 / 23
Пакети
Програмери групишу сличне тј. повезане типове у пакете и на тај
начин избегавају конфликте у именима и контролишу приступ.
Пакет је група повезаних типова (класа, интерфејса,
енумерисаних типова и типова нотације)за коју је обезбеђује
заштита при приступу и управљање простором имена.
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 4 / 23
Пакети (2)
Разлози за паковање класа и интерфејса у пакете су :
1. Лакше одређивање да ли су типови повезани.
2. Лакше се могу пронаћи тражени типови.
3. Нема именских конфликта са другим типовима истог назива,
јер пакет креира нови простор имена.
4. Допуштање да типови унутар пакета имају неограничен
приступ један другом.
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 5 / 23
- Процес креирања сопствених пакета се може описати у три
корака.
- Први корак је избор имена пакета.
- Препорука произвoђaчa: коришћење назива Интернет домена са
елементима поређаним по обрнутом редоследу.
- На пример, ако је назив домена: matf.bg.ac.rs, назив пакета би
требало да почне са rs.ac.bg.matf.
- На тај начин се постиже да назив пакета буде јединствен.
- По конвенцији, називи пакета почињу малим словима.
Пакети (3)
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 6 / 23
- Други корак је креирање структуре директоријума
(фасцикли, фолдера).
- Ако је назив пакета из једног дела (нема тачака у називу),
назив директоријума поклапа се са називом пакета.
- Ако се назив пакета састоји из више делова (одвојених тачком),
тада за сваки део треба формирати поддиректоријум.
- На пример, за rs.ac.bg.matf, главни директоријум треба да се
зове rs, његов поддиректоријум ac, његов поддиректоријум
bg и у њему треба да постоји директоријум matf.
- У сваки од ових директоријума се могу убацити датотеке,
односно класе, интерфејси итд.
Пакети (4)
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 7 / 23
- Трећи корак је додавање package наредбе
- Ово треба да буде прва наредба Јава програма, дакле, пре
прве наредбе import.
- На пример, ако је назив пакета rs.ac.bg.matf, на почетку
сваке датотеке у том пакету мора писати:
package rs.ac.bg.matf;
Пакети ( 5 )
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 8 / 23
- Да би могло да се рукује уграђеним Јава класама, мора се знати
где се класе налазе у оквиру система.
- Место где се класе налазе одређује се преко команде
оперативног система CLASSPATH.
- Овом командом се дефинише путања до директоријума у
ком Јава окружење за извршавање тражи класе.
- Ако CLASSPATH није дефинисан, подразумева се
директоријум java\lib у конкретној инсталацији Јаве.
- Комбиновањем путање дате у CLASSPATH-у и назива пакета, Јава
Виртуелна Машина проналази класе са којима се оперише.
Пакети ( 6 )
Математички факултет (^) {vladafVl@matf.bg.ac.rs rs 9 / 23