Above
diagram shows the directory structure.
1. Directory
named “data_structure” contains two sub directories linear and
non-linear. 2.Directory linear contains two java files named Stack.java, DataStructure.java
package data_structure.linear; public interface DataStructure{ int MAX_SIZE = 1000; void display(); void insert(int data); void delete(); int search(int data); }
package data_structure.linear; public class Stack implements DataStructure{ int top = -1; int stack[] = new int[DataStructure.MAX_SIZE]; public void display(){ for(int i=0; i<=top; i++){ System.out.println(stack[i]); } } public void insert(int data){ if(top < DataStructure.MAX_SIZE-1){ top++; stack[top] = data; } else{ System.out.println("Stack is not empty"); } } public void delete(){ if(top == -1){ System.out.println("Stack is Empty"); } else{ stack[top] = 0; top--; } } public int search(int data){ for(int i=0; i < top; i++) if(stack[i] == data) return 0; return -1; } }
Lets
say StackTest.java is in the package data_structure.
package data_structure; import data_structure.linear.*; class StackTest{ public static void main(String args[]){ DataStructure myStack1 = new Stack(); myStack1.delete(); myStack1.insert(10); myStack1.insert(20); myStack1.display(); } }
Statements
to execute the StackTest.java
C:\>javac
-cp . data_structure\linear\DataStructure.java
C:\>javac
-cp . data_structure\linear\Stack.java
C:\>javac
-cp . data_structure\StackTest.java
C:\>java
-cp . data_structure.StackTest
Stack
is Empty
10
20
As
You observe the Stack.java, It is a public class and all the methods
in the stack class are public, So from StackTest.java which is
completely outside of the package “linear” we accessed the Stack
class and and its public methods.
No comments:
Post a Comment