-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSubClassTester.java
28 lines (21 loc) · 1.23 KB
/
SubClassTester.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// File: SubClassTester.java
// Package: demo.subpackage
package demo.subpackage;
import demo.accessmodifiers.AccessModifiersDemo;
public class SubClassTester extends AccessModifiersDemo {
public static void main(String[] args) {
SubClassTester obj = new SubClassTester();
// Accessing public members - accessible from any package
System.out.println("Public Variable: " + obj.publicVar);
obj.publicMethod();
// Accessing protected members - accessible due to inheritance (even in a different package)
System.out.println("Protected Variable: " + obj.protectedVar);
obj.protectedMethod();
// Default and private members are not accessible from a different package
// The following lines will cause compilation errors if uncommented
// System.out.println(obj.defaultVar); // Error: Default member not accessible in a different package
// obj.defaultMethod(); // Error: Default method not accessible in a different package
// System.out.println(obj.privateVar); // Error: Private member not accessible outside the class
// obj.privateMethod(); // Error: Private method not accessible outside the class
}
}