Core Java Tutorial

Core Java Tutorial

What is Package in Java

Packages:

A package is a grouping of related types providing access protection and name space management. Note that types refers to classes, interfaces, enumerations, and annotation types.

A package is a collection of related classes.

It helps Organize your classes into a folder structure and make it easy to locate and use them.

More importantly, It helps improve re-usability.

Creating a class inside a package

Create a directory structure as shown in image

Main.java

public class Main

{

 // your code

}

Vehicle.java

If your code belongs to package then your programs first line should be

package <packagename>

package sam;

public class Vehicle

{

 public int a = 10

 //your code

}

Car.java

package sam.test;

public class Car

{

 // your code

}

Accessing a class located in different package

There are two ways to access class located in another package

  • Use import statement to access the class

Star(*) imports all classes located in the package specified.

import sam.*;

import sam.test.*;

But the best practice is to import only the specific class

import sam.Vehicle;

import sam.test.Car;

To access vehicle and car class in Main

import sam.Vehicle;

import sam.test.Car;

class Main

{

 public static void main(String[] args)

 {

  Vehicle v1 = new Vehicle();

  System.out.println(v1.i);

 }

}

Compile all classes and run Main.java to check the output

  • Instead of importing the class you can import it while creating the object

sam.test.Vehicle v1=new sam.test.Vehicle();

class Main

{

 public static void main(String[] args)

 {

  sam.test.Vehicle v1 = new sam.test.Vehicle();

  System.out.println(v1.i);

 }

}

This type of import will be used to avoid import conflicts when we have same class name in different package