package cz.muni.fi.pb162;
// class Person is in this package
public class Person {
// attributes, methods
}
Co znamená související?
Příklad: V balíku geometry jsou třídy reprezentující geometrické objekty (čtverec, trojúhelník, …).
cz.muni.fi.pb162 je možné a vhodné jméno balíkucz.muni.fi je obrácené doménové jméno fakulty (fi.muni.cz)pb162 je identifikátor, jehož jedinečnost už si v rámci organizace FI "uhlídáme"java.util)junit.framework, i když to nebylo Java Core API.package cz.muni.fi.pb162;
// class Person is in this package
public class Person {
// attributes, methods
}
Všechna písmena názvu balíku by měla být dle konvencí malá, tedy nikoli Cz.Muni.Fi.PB162 nebo tak něco.
|
cz.muni.fi.pb162.PersonPersonPerson bude v souboru Person.javacz/muni/fi/pb162package název.balíku;Balíky obvykle organizujeme do jakýchsi pseudohierarchií, např.:
cz.muni.fi.pb162cz.muni.fi.pb162.bankingcz.muni.fi.pb162.banking.creditcz.muni.fi.pb162.banking.Account
byla současně v balíku cz.muni.fi.pb162.banking a taky třeba cz.muni.fi.pb162.cz.muni.fi.pb162.banking, je pouze v něm a žádném jiném.cz.muni.fi.pb162, ani v cz.muni.fi.pb162.banking.credit.| Prostě buď je ve stejném balíku nebo je v jiném :-) |
public, protected, privateTřída Person v balíku cz.muni.fi.pb162
package cz.muni.fi.pb162;
public class Person {
// attributes, methods
}
Třída Account v tomtéž balíku
package cz.muni.fi.pb162;
public class Account {
private Person owner; // owner of this Account is a Person
}
Account v balíku import cz.muni.fi.pb162.bankingPerson její plný název balíkupackage cz.muni.fi.pb162.banking;
public class Account {
private cz.muni.fi.pb162.Person owner; // full package name
}
importimportpackage cz.muni.fi.pb162.banking;
import cz.muni.fi.pb162.Person;
public class Account {
private Person owner; // class name imported above
}
import názevbalíku.NázevTřídyimport cz.muni.fi.pb162.Person;Person) v rámci jiné třídy.package názevbalíku;).import názevbalíku.*import cz.muni.fi.pb162.*;Doporučuje se "import s hvězdičkou" nepoužívat vůbec
* importů, a obojí z nich obsahují třídu Person, která z nich se použije?import cz.* nezpřístupní třídu cz.muni.fi.pb162.Person./