<< Chapter < Page Chapter >> Page >

Some examples of package directives that you will see in upcoming sample programs follow:

Example package directives package Combined.Java.p1; package Combined.Java.p2;

Given the following as the classpath on my hypothetical machine,

CLASSPATH=.;c:\Baldwin\JavaProg

these two package directives indicate that the class files being governed by the package directives are contained in the followingfolders:

c:\Baldwin\JavaProg\Combined\Java\p1 c:\Baldwin\JavaProg\Combined\Java\p2

Notice how I concatenated the package directive to the classpath setting and substituted the backslash character for the period when convertingfrom the package directive to the fully-qualified path name.

Code in one package can refer to a class in another package (if it is otherwise accessible) by qualifying the class name with its package name as follows :

Combined.Java.p2.Access02 obj02 = new Combined.Java.p2.Access02();

Obviously, if we had to do very much of that, it would become very burdensome due to the large amount of typing required. As you already know, the import directive is available to allow us to specify the package containing the class just once at thebeginning of the source file and then refer only to the class name for the remainder of that source file.

The import directive

This discussion will be very brief because you have been using import directives since the very first module. Therefore, you already knowwhat they look like and how to use them.

If you are interested in the nitty-gritty details (such as what happens when you provide two import directives that point to two different packagescontaining the same class file name) , you can consult the Java Language Reference by Mark Grand, or you can download the Java language specificationfrom Oracle's Java website.

The purpose of the import directive is to help us avoid the burdensome typing requirement described in the previous section when referring to classes in a different package.

An import directive makes the definitions of classes from other packages available on the basis of their file names alone.

You can have any number of import directives in a source file. However, they must occur after the package directive (if there is one) and before any class or interface declarations.

There are essentially two different forms of the import directive, one with and the other without a wild card character (*) . These two forms are illustrated in the following box.

Two forms of import directives import java.awt.* import java.awt.event.ActionEvent

The first import directive makes all of the class files in the java.awt package available for use in the code in a different package by referring only to their file names.

The second import directive makes only the class file named ActionEvent in the java.awt.event package available by referring only to the file name.

Compiling programs with package directives

So, how do you compile programs containing package directives? There are probably several ways. I am going to describe one waythat I have found to be successful.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Object-oriented programming (oop) with java' conversation and receive update notifications?

Ask