VERY LONG JAVA NOTES + VIVA QUESTIONS
1. INTRODUCTION TO JAVA
Java is a high-level, object-oriented, platform-independent language...
2. JAVA ARCHITECTURE
Java follows three steps: writing code, compiling to bytecode, and execution by JVM...
3. JDK, JRE, JVM
JDK contains JRE + compiler...
JRE contains JVM + libraries...
JVM executes bytecode...
4. FEATURES OF JAVA
Simple, object-oriented, platform-independent, secure, robust, multithreaded...
5. OOPs CONCEPTS
Encapsulation: binding data and methods...
Inheritance: acquiring properties...
Polymorphism: same name, different behaviour...
Abstraction: hiding internal details...
6. CLASSES & OBJECTS
Class: blueprint...
Object: instance...
7. CONSTRUCTORS
Used to initialize objects...
8. DATA TYPES
Primitive and non-primitive...
9. OPERATORS
Arithmetic, logical, relational...
10. CONTROL STATEMENTS
if, switch, loops, break, continue...
11. ARRAYS
Single and multi-dimensional...
12. STRINGS
Immutable class...
13. EXCEPTION HANDLING
try, catch, finally...
14. MULTITHREADING
Thread creation methods...
15. FILE HANDLING
Reader, Writer, Streams...
16. COLLECTIONS FRAMEWORK
List, Set, Map...
17. INTERFACE & ABSTRACT CLASS
Difference and usage...
18. ACCESS MODIFIERS
public, private, protected, default...
19. WRAPPER CLASSES
Integer, Double...
20. MEMORY MANAGEMENT
Heap, Stack...
21. GARBAGE COLLECTION
Automatic cleanup...
22. PACKAGES
Grouping of classes...
23. JDBC STEPS
Load driver, connect, execute...
VIVA QUESTIONS & ANSWERS
1. What is Java?
Java is an object-oriented, platform-independent language.
2. What is JVM?
JVM executes bytecode...
3. What is difference between JDK and JRE?
JDK = JRE + development tools...
4. What is polymorphism?
Same method behaving differently...
5. What is inheritance?
One class acquiring features of another...
6. Difference between overloading and overriding?
Overloading: compile-time...
Overriding: runtime...
7. What is an interface?
A 100% abstract blueprint...
8. What is String immutability?
Strings cannot be changed...
9. Difference between ArrayList and LinkedList?
ArrayList for fast access...
LinkedList faster insertion...
10. What is exception handling?
Mechanism to handle runtime errors...
(Complete detailed notes delivered)