Java Full Notes (Core + Advanced)
1. Java Overview
- Java is an object-oriented, class-based programming language.
- Platform Independent: 'Write Once, Run Anywhere'
- Compiled into Bytecode, runs on JVM.
2. Java Fundamentals
- Data Types: int, float, char, boolean, etc.
- Variables: local, instance, static
- Operators: arithmetic, logical, relational, bitwise, assignment
3. Control Statements
- if, else, switch
- for, while, do-while
- break, continue
4. Object-Oriented Programming in Java
- Class & Object
- Inheritance
- Encapsulation
- Abstraction
- Polymorphism (Overloading & Overriding)
5. String Handling
- String (Immutable), StringBuilder, StringBuffer
- Useful methods: charAt(), substring(), equals(), compareTo()
6. Exception Handling
- Keywords: try, catch, finally, throw, throws
- Types: Checked & Unchecked
- Custom Exceptions
7. Packages and Access Modifiers
- Packages group related classes: [Link], [Link]
- Access Levels: private, default, protected, public
8. Wrapper Classes
- Convert primitive to object: int → Integer
- Auto-boxing and Unboxing
9. Arrays & Collections
- Arrays: fixed-size data structures
- Collections Framework: List, Set, Map
- Classes: ArrayList, LinkedList, HashSet, TreeMap, HashMap
10. File Handling
- Use [Link] or [Link] packages
- Classes: File, FileReader, FileWriter, BufferedReader
11. Multithreading
- Create thread: Extend Thread or Implement Runnable
- Methods: start(), run(), sleep(), join()
- Synchronization
12. JDBC (Java Database Connectivity)
- Connect Java to databases like MySQL
- Steps: Load driver, Connect, Execute queries, Close connection
13. Servlets
- Java programs that run on servers
- Lifecycle: init(), service(), destroy()
14. JSP (Java Server Pages)
- Combines Java with HTML
- Uses tags: <% %>, <%= %>, directives
15. JavaBeans
- Reusable software components
- Follow naming conventions like getX(), setX()
16. Swing & AWT
- AWT: Abstract Window Toolkit
- Swing: Lightweight GUI toolkit
- Components: JFrame, JButton, JLabel, JTextField
17. Java Applets
- Mini Java programs for browsers (deprecated)
- Methods: init(), start(), stop(), destroy()
18. Annotations
- Metadata in Java code
- Examples: @Override, @Deprecated, @SuppressWarnings
19. Java 8+ Features
- Lambda Expressions, Functional Interfaces, Stream API
- Method References, Default & Static methods in interfaces
20. Java Memory Management
- Heap vs Stack memory
- Garbage Collection