Categories: Java

Sub packages in Java

  • The subpackage is a package within a package.
  • It should be developed to further categorize the package.
  • Sub packages are identical to packages, with the exception that they are defined within other packages.
  • Sub packages are similar to subdirectories, which are directories within directories.
  • Sub packages in themselves are packages, so you have to use/access them similar to packages.
  • They can also contain any types, such as classes, interfaces, and enums.
Example:
package com.coderzpy.code;  
class Simple{  
  public static void main(String args[]){  
   System.out.println("Hello subpackage");  
  }  
}  

To Compile: javac -d . Simple.java

To Run: java com.coderzpy.code.Simple

Output
Hello subpackage
Why do we make Sub Packages in the first place?

Sub packages are used to further categorize and divide a package. It’s comparable to creating a subfolder within a folder to further categorize it so you can better organize your stuff and make it easier to access. A package may contain several sub-packages.

Example of Predefined SubPackage in Java:

The Pattern class of the java.util.regex subpackage is demonstrated in the sample below. Regular expression classes and interfaces are contained in this sub package.

 import java.util.regex.Pattern;
 // To imports all classes of java.util.regex subpackage.
 // import java.util.regex.*; 
 
 class Pattern_program {
   public static void main(String args[]) { 
      // Checks if the given string contains only alphabets
      System.out.println(Pattern.matches("[a-zA-Z]*", "JavaCoding"));
      System.out.println(Pattern.matches("[a-zA-Z]*", "JavaCoding2Coderzpy"));
      // Checks if the given string contains only numbers
      System.out.println(Pattern.matches("[0-9]*", "123456"));
      System.out.println(Pattern.matches("[0-9]*", "123XZY6"));     
   }
 }
Output:
true
false
true
false
Java Static Import:

Java 5’s static import feature allows java programmers to directly access any static member of a class. It’s not necessary to qualify it with the class name.

Note:

  • Static import has the advantage of requiring less coding if you frequently access any static member of a class.
  • Static import’s disadvantage is that it renders your program illegible and unmaintainable if you use it too much.
Example:
import static java.lang.System.*;    
class StaticImportExample{  
  public static void main(String args[]){  
     
   out.println("Hello");//Now no need of System.out  
   out.println("Java");  
  
 }   
}      
Output:
Hello
Java

Note: also read about the Packages in Java

Follow Me

If you like my post please follow me to read my latest post on programming and technology.

https://www.instagram.com/coderz.py/

https://www.facebook.com/coderz.py

Share
Published by
Rabecca Fatima

Recent Posts

Generate Parenthesis | Intuition + Code | Recursion Tree | Backtracking | Java

Problem Statement: Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. Example…

3 months ago

Square Root of Integer

Given an integer A. Compute and return the square root of A. If A is…

1 year ago

Build Array From Permutation

Given a zero-based permutation nums (0-indexed), build an array ans of the same length where…

1 year ago

DSA: Heap

A heap is a specialized tree-based data structure that satisfies the heap property. It is…

2 years ago

DSA: Trie

What is a Trie in DSA? A trie, often known as a prefix tree, is…

2 years ago

Trees: Lowest Common Ancestor

What is the Lowest Common Ancestor? In a tree, the lowest common ancestor (LCA) of…

2 years ago