A structured repository for learning, revising, and practicing Core Java from the ground up. This repository is designed with a backend development mindset and serves as a reference while preparing for Java interviews and Spring Boot.
- Build a strong foundation in Core Java
- Understand Java syntax and language features
- Master Object-Oriented Programming
- Practice the Java Collections Framework
- Learn Java 8 features used in modern backend development
- Prepare for Spring Boot and backend engineering
- Maintain well-organized revision notes and code examples
core-java/
│
├── src/
│ └── com/
│ └── yusuf/
│ ├── Main.java
│ ├── basics/
│ ├── controlflow/
│ ├── methods/
│ ├── arrays/
│ ├── strings/
│ ├── oops/
│ ├── exceptions/
│ ├── collections/
│ ├── generics/
│ ├── java8/
│ ├── filehandling/
│ ├── multithreading/
│ ├── memory/
│ ├── advanced/
│ ├── interview/
│ └── projects/
- Variables
- Data Types
- Operators
- Type Casting
- User Input
- Output Formatting
- if-else
- switch
- for loop
- while loop
- do-while loop
- break & continue
- Methods
- Method Overloading
- Variable Arguments (VarArgs)
- Recursion
- One-Dimensional Arrays
- Multi-Dimensional Arrays
- Array Operations
- String
- StringBuilder
- StringBuffer
- Common String Operations
- Classes & Objects
- Constructors
- this Keyword
- static Keyword
- Encapsulation
- Inheritance
- Polymorphism
- Abstraction
- Interfaces
- Packages
- try-catch
- finally
- throw
- throws
- Custom Exceptions
- List
- Set
- Queue
- Map
- Iterator
- Comparable
- Comparator
- Generic Classes
- Generic Methods
- Wildcards
- Lambda Expressions
- Functional Interfaces
- Streams API
- Method References
- Optional
- Date & Time API
- File
- FileReader
- FileWriter
- BufferedReader
- BufferedWriter
- Serialization
- Thread
- Runnable
- Synchronization
- ExecutorService
- Callable
- Future
- Stack vs Heap
- Garbage Collection
- String Pool
- Object Lifecycle
- Enums
- Annotations
- Reflection
- Inner Classes
- Records
- Sealed Classes
Frequently asked Java interview programs and conceptual questions.
Small console-based Java projects to apply learned concepts.
- Clone the repository.
- Open it in IntelliJ IDEA.
- Navigate to the desired package.
- Run the corresponding Java class containing the
main()method.
Each Java concept is placed in its own package and class to keep the code modular, easy to understand, and convenient for revision. The repository is intended to grow alongside the learning journey, with clean examples and practical implementations.
- Java
- IntelliJ IDEA
- Git
- GitHub
- Basics
- Control Flow
- Methods
- Arrays
- Strings
- OOP
- Exception Handling
- Collections
- Generics
- Java 8
- File Handling
- Multithreading
- JVM & Memory
- Advanced Java
- Mini Projects
This repository is maintained for educational purposes and continuous learning.