devxlogo

Doing an [import java.package.*]

Doing an [import java.package.*]

This tip is probably cosmetic, but it could result in great convenience. Doing a [import java.package.*] would allow usage of [public] classes in theaforementioned package without the usual required verbosity. This means that [java.package.class1] and [class1] would mean the same thing(and be legal as well).

But one thing about it is that the classes in subpackages are not importedwith those in the package.Meaning that [java.package.subpackage.class2] cannot be referenced legallyas [class2]. You would have to do a [import java.package.subpackage.*]

For those who are not greedy, you can do a simple [importjava.package.class3] and reference it in your code as [class3] this may comein useful when [java.package1] and [java.package2] both contain a classcalled [UnfortunatelyCommonClass] and you want access to some classes ineach.

An error will arise if wildcards (*) are used in importingand classes in different packages imported have the same name.But if classes are imported without wildcards like so:

 import java.package1.UnfortunatelyCommonClass;import java.package2.*

[UnfortunatelyCommonClass] references the one in [java.package1]. But ifthis is done:

 import java.package1.*import java.package2.*

Using [UnfortunatelyCommonClass] would return an error. Happy importing.

devx-admin

Share the Post: