Explain packages in Java discuss access protection and importing packages with example.
Explain packages in Java discuss access protection and importing packages with example.
Packages in Java – Extended Explanation
✅ What is a Package in Java?
A package in Java is a collection of related classes, interfaces, and sub-packages grouped together.
π Simple meaning:
Package = Folder
Classes = Files inside folder
It helps to:
organize code properly
avoid name conflicts
provide security (access control)
reuse code easily
---
πΉ Types of Packages
1. Built-in (Predefined) Packages
Already provided by Java.
Examples:
java.lang
java.util
java.io
java.sql
Example:
import java.util.Scanner;
---
2. User-Defined Packages
Created by programmer.
Example:
package mypack;
---
πΉ How to Create a Package?
Step 1: Write package statement
package mypack;
Step 2: Create class
package mypack;
public class Message {
public void show() {
System.out.println("Hello Nami!");
}
}
Step 3: Compile
javac -d . Message.java
π -d . creates folder automatically
---
πΉ Advantages of Packages
✅ Code organization
✅ Avoid class name duplication
✅ Easy maintenance
✅ Security using access protection
✅ Reusability
---
πΉ Access Protection in Packages
Java provides 4 access modifiers to protect data.
Modifier Same Class Same Package Subclass Other Package
private ✅ ❌ ❌ ❌
default ✅ ✅ ❌ ❌
protected ✅ ✅ ✅ ❌*
public ✅ ✅ ✅ ✅
---
1️⃣ Private
Accessible only inside same class
class Test {
private int x = 10;
}
π Cannot access outside class
---
2️⃣ Default (no modifier)
Accessible only inside same package
class Test {
int x = 20;
}
π Works inside same package only
---
3️⃣ Protected
Accessible:
same package
subclass (even different package)
protected int x = 30;
---
4️⃣ Public
Accessible everywhere
public int x = 40;
---
πΉ Example for Access Protection
Package: mypack
package mypack;
public class AccessDemo {
private int a = 10;
int b = 20;
protected int c = 30;
public int d = 40;
public void display() {
System.out.println(a + " " + b + " " + c + " " + d);
}
}
---
Another class in same package
package mypack;
class Test {
public static void main(String[] args) {
AccessDemo obj = new AccessDemo();
// System.out.println(obj.a); ❌ private
System.out.println(obj.b); // ✅
System.out.println(obj.c); // ✅
System.out.println(obj.d); // ✅
}
}
---
πΉ Importing Packages
To use classes from another package, we use import keyword.
---
Types of Import
1️⃣ Import single class
import java.util.Scanner;
---
2️⃣ Import all classes
import java.util.*;
---
3️⃣ Fully qualified name (no import)
java.util.Scanner sc = new java.util.Scanner(System.in);
---
πΉ Example Program using Import
import java.util.Scanner;
public class InputDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter your name:");
String name = sc.nextLine();
System.out.println("Hello " + name);
}
}
---
πΉ Complete Example with User Defined Package
Step 1: Create package class
File: mypack/Calculator.java
package mypack;
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}
---
Step 2: Use package in another class
File: Main.java
import mypack.Calculator;
class Main {
public static void main(String[] args) {
Calculator obj = new Calculator();
int result = obj.add(5, 3);
System.out.println("Sum = " + result);
}
}
---
πΉ Compilation Steps
javac -d . Calculator.java
javac Main.java
java Main
Output:
Sum = 8
---
✅ Final Conclusion
Packages in Java help to:
group related classes
avoid naming conflicts
provide access protection
improve security
make large projects manageable
Access modifiers control visibility, and import allows using classes from other packages easily.
Comments
Post a Comment