Mastering Java 17 Coding Questions: From Basics to Advanced with Real Projects
A comprehensive walkthrough of Java 17 concepts with file-based projects covering Data Structures, OOP, Streams, Multithreading, and Java 8 features.

Hi, I'm CodeReacher, a budding technical content writer with a passion for simplifying complex tech concepts. I come from a Computer Science background and love creating clear, engaging content around topics like Web development, DevOps, or cloud. I recently started Code Reacher, a blog dedicated to sharing practical, reference-rich tech articles for developers and learners. I'm eager to grow in the field and contribute meaningful content to the tech community.
π Introduction:
Are you preparing for technical interviews or upgrading your Java skills?
This guide walks you through Java 17 coding questions β with structured file-based implementations hosted on my GitHub. These programs cover everything from basic logic to real-world problem-solving using Java 8+ features, including OOP, Streams, Records, Collections, Multithreading, and more.
π§ Topics Covered
β I. Core Java Programs (Beginner to Intermediate)
Prime number, factorial (iterative/recursive)
Fibonacci series
Palindrome (number & string)
Armstrong numbers
Reverse string/number
Sum of digits, FizzBuzz
Anagram check, character count, first non-repeating character
π Directory: src/com/example/core/
β II. Object-Oriented Programming in Java 17
Inheritance and polymorphism with class hierarchy
Encapsulation with private fields and getters/setters
Singleton Design Pattern
Record-based and sealed-class examples
π Directory: src/com/example/oop/
β III. Collections Framework
Frequency counter using
HashMapCustom object sorting using
ComparableandComparatorhashCode()andequals()best practices
π Directory: src/com/example/collections/
β IV. Multithreading Concepts
Creating threads with
RunnableandThreadclassSynchronized blocks and race condition prevention
Producer-Consumer problem using both
wait/notifyandBlockingQueueDeadlock simulation and resolution
π Directory: src/com/example/multithreading/
β V. Data Structures: Arrays, Linked Lists, Trees
Singly/Doubly linked list: reverse, detect loop, merge sorted
Binary Search Tree: insert, search, traversals (in/pre/post)
Array rotations, missing number, sum of pairs, duplicates, min/max
Advanced array logic: Kadaneβs algorithm, XOR odd occurrence, move zeros
π Directory: src/com/example/ds/
β VI. Java 8 and 17 Features
Lambda expressions and custom functional interfaces
Stream API: filter, map, reduce, collect, forEach
Optional usage to avoid
NullPointerExceptionRecord-based models and immutability
Package-structured, modular Java code
π Directory: src/com/example/java8features/
π Sample Code Highlight β Stream API
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
List<String> filtered = names.stream()
.filter(name -> name.startsWith("A"))
.collect(Collectors.toList());
ποΈ GitHub Repository
Explore the full project:
π https://github.com/sree2694/Practice-Java
π Who Should Read This?
Java Beginners preparing for interviews
Professionals revisiting Java for coding rounds
Anyone wanting a modular, file-based Java learning repo
Learners interested in Java 8+ features with Java 17 compatibility
π§© What's Next?
β
Adding JUnit test cases for each module
β
Introducing Spring Boot mini projects
β
Creating interactive CLI apps using these modules
β
Dockerizing and deploying key algorithms for microservice design
π¬ Letβs Connect
If you liked this project or want to collaborate on more Java/AI projects:
π» GitHub β @sree2694
βοΈ Drop feedback or feature suggestions in Issues or Discussions tab!



