1.Linear Data Structure:
i. Static Data Structure: Array
ii.Dynamic Data Structure:
* Queue
* Linked List
* Stack
2.Non-Linear Data Structure:
* Tree
* Graph
* embedded: portable, reuseable, reliable with embedded systems
* secure: compile code into a binary byte interpreted on JVM
* robust: utilizes strong memory management by bypassing security dilemmas
* architecture neutral: 4 bits of memory for both 32 & 64 bit architeure
* high performance: byte code is close to native code
* distributed: facilitates users to create distributed apps (RMI & EJB)
* multi-threaded: doesn't occupy memory for each thread, shares a common memory area
* dynamic: classes are loaded on demand also supports functions from native languages i.e. C, C++