Java Basics (Core Java): Explain Inheritance, Composition and Aggregation Explain Singleton Pattern Can I create a sub class of a static/abstract class ? Difference between sleep() and wait() Where are local variables stored in JVM ? [Stack/Heap] What are Transient and Volatile Variables ? when do you use them ? Transient: Dictionary Meaning of Transient : One who stays for only a short time. You use the transient keyword to indicate to the Java virtual machine that the indicated variable is not part of the persistent state of the object. Variables that are part of the persistent state of an object must be saved when the object is archived. Volatile: If your class contains a member variable that is modified asynchronously by concurrently running threads, you can use Java's volatile keyword to notify the Java runtime system of this. What are deadlocks and how are they caused ? What is Serialization a...