Unit 2
Unit 2
Packages Packages and interfaces are two of the basic components of a Java
program. In general, a Java source file can contain any (or all) of the following four
internal parts:
* A single package statement (optional)
* Any number of import statements (optional)
* A single public class declaration (required)
* Any number of classes private to the package (optional)
Java provides a mechanism for partitioning the class name space into more
manageable chunks. This mechanism is the package. The package is both a naming and a
visibility control mechanism. You can define classes inside a package that are not
accessible by code outside that package. You can also define class members that are only
exposed to other members of the same package.
Defining a Package:
* Creating a package is quite easy: simply include a package command as the first
statement in a Java source file. Any classes declared within that file will belong to the
specified package. The package statement defines a name space in which classes are
stored.
* If you omit the package statement, the class names are put into the default package,
which has no name. While the default package is fine for short, sample programs, it is
inadequate for real applications. Most of the time, you will define a package for your
code.
Creating a Package:
* The general form of the package statement:
package pkg; Here, pkg is the name of the package.
simply specifies to which package the classes defined in a file belong. It does not exclude
other classes in other files from being part of that same package. You can create a
hierarchy of packages. To do so, simply separate each package name from the one above
it by use of a period.
* The general form of a multileveled package statement is shown here:
package pkg1[.pkg2[.pkg3]];
* A package hierarchy must be reflected in the file system of your Java development.
For example, a package declared as package java.awt.image; needs to be stored in
java/awt/image, java\awt\image,
Or
java:awt:image
on your
UNIX, Windows, or Macintosh file system, respectively. Be sure to choose your
package names carefully.
* You cannot rename a package without renaming the directory in which the classes are
stored.
In order for a program to find MyPack, one of two things must be true. Either the
program is executed from a directory immediately above MyPack, or CLASSPATH
must be set to include the path to MyPack.
The first alternative is the easiest (and doesn‘t require a change to
CLASSPATH), but the second alternative lets your program find MyPack no matter
what directory the program is in.
Create the package directories below your current development directory, put the
.class files into the appropriate directories and then execute the programs from the