Transcript Packages

Working with Packages
BCIS 3680 Enterprise Programming
Using Classes in JSP
This set of slides shows how to create a Java package and
compile class files in the package.
The following information is particularly important:




2
How the folder hierarchy in Java development folder must
mirror the package name hierarchy.
How the package name hierarchy is reflected in the java
command.
Packages
A package is a collection of related classes that can be
imported into a program.
Packages allow reuse of classes without having to place
them in the same directory as the application currently
being developed.
Putting your classes into a package reduces the chances
of naming conflicts with other people’s classes.



3
Name Your Package
To avoid naming conflicts between packages created by two
programmers, Sun Microsystems recommended this naming
convention:


Reverse the organization’s domain name and put it in front of each
package.
E.g., both of the following two packages contains a class with
the name Registration. However, since the domain names
unt.edu and smu.edu are guaranteed to be unique, the
package names thus generated are unique as well. Therefore,
there won’t be confusion as to which Registration class
is being referred to.

edu.unt.Registration
edu.smu.Registration
4
package Keyword
To include a class in a package, precede the class definition
with the package statement:

package packageName;
It must be the first statement in the source code file.
It must be above any import statements.
The folder hierarchy of the source code folder(s) must agree
with the package name.






\edu\smu for the edu.smu package
\edu\unt\cob for the edu.unt.cob package
\foo for the foo package
To use the class in another package, import the class:

import packageName.ClassName;
5
Preparing Class Files for Use
Source code must be compiled before it can be executed.
The files that are fit for execution are the .class
(compiled) files, not the .java source code files.
You should be able to compile files and store the .class
files in folders under proper folder hierarchy.
Using NetBeans can make this process easier. If you
prefer to write source code and compile it outside of
NetBeans, you may have to create the source code folder
hierarchy manually. Refer to Tutorial 1 for compilation
instructions.




6
Using NetBeans
If you use NetBeans, it
creates folders
automatically for you
while you create new
packages and build
(compile) files in the IDE.
The folder hierarchy in
the source code folder
and compiled file folder
are mirrored without your
intervention.


7
Creating a Package in NetBeans
To create a package in NetBeans, first create a project.
Then, right-click the project name or Source Package
(shown below) and select New | Java Package…


8
Folders, Folders…
For each of the levels in the package name (separated by a
dot), NetBeans adds a new child folder.


In the example, the package name edu.unt is mirror in the folder
structure – edu\unt.
If your IDE doesn’t do this automatically like NetBeans does,
you must create this folder structure manually.

9
Contents of src Folder
As you create classes in
the edu.unt package, for
each new class, a
corresponding .java
file will appear in this
folder.
10
Contents of Source Code Folders


The DateApp.java file is stored in the unt subfolder
of the edu folder.
If you’re not typing the code from scratch, copy the file
into this location.
11
Compiling Source Code


To generate the binary, compiled version of the classes
(.class files), right click the project and select Build.
After this is done, in the project folder, you will see a new
subfolder with the name build and under it, a classes
subfolder. Under the classes subfolder, the same folder
hierarchy under src is reproduced. However, these folders
under classes store the .class files.
12
Contents of classes Folder
Note the newlycreated build folder
and how the folder
hierarchy under the
classes folder mirrors
that under the src
folder.
13
Contents of Compiled File Folders

The compiled DateApp class is stored in
build\classes\edu\unt.
14
Manual Method




If you write source code
outside of NetBeans, you may
have to create the proper
folder hierarchy manually.
However, you don’t have to
have the build folder.
For the folders to store
compiled files, manually create
only the classes folder.
javac is the command to
compile source code.

15
The –d switch of the command
allows you to specify where to
store the .class files.