Top Deloitte Java Developer Interview Questions [2025 Updated]
Are you preparing for an interview with Deloitte as a Java Developer? Whether you’re aiming for a Java Full Stack Developer, a Senior Consultant Java role or preparing for 3 years experienced level, this is my real experince insight into the most frequently asked Deloitte Java Developer Interview Questions with experience-based answers.
These Deloitte interview questions for Java developer roles are categorized to help you prepare efficiently.

πΉ Core Java Interview Questions
1. What is the difference between ==
and .equals()
in Java?
Answer: This is a classic question. ==
checks if two object references point to the same memory location. On the other hand, .equals()
checks if two objects have the same content or value. For example:
String a = new String("Hello");
String b = new String("Hello");
System.out.println(a == b); // false
System.out.println(a.equals(b)); // true
Interviewers expect you to explain with a practical example, not just the theory.
2. Can you explain how HashMap works internally?
Answer: HashMap uses a hashing technique. It stores data in buckets, and each key’s hashCode()
determines the bucket. If two keys have the same hash, a collision happens, and they are stored using a LinkedList or Tree (in Java 8+). During retrieval, the hash and equals()
method are both used to locate the correct key-value pair.
πΉ Multi-threading and Concurrency
3. What are the ways to create threads in Java?
Answer: Two main ways:
- Implement
Runnable
interface - Extend
Thread
class
Runnable is preferred as it promotes loose coupling and allows inheritance from other classes.
4. What is a daemon thread?
Answer: A daemon thread is a background thread that dies when all user threads finish. Example: garbage collection. It’s used for low-priority tasks. You can set it using thread.setDaemon(true)
.
πΉ Exception Handling
5. Exception hierarchy in Java?
Answer: Exception Hierarchy in Java, commonly asked in interviews like Deloitte Java Developer, Java Full Stack, and Senior Consultant Java roles:
java.lang.Object
βββ java.lang.Throwable
βββ java.lang.Error (Unchecked, usually system-level)
β βββ OutOfMemoryError
β βββ StackOverflowError
βββ java.lang.Exception (Checked)
βββ java.lang.RuntimeException (Unchecked)
β βββ NullPointerException
β βββ IndexOutOfBoundsException
β βββ IllegalArgumentException
β βββ ArithmeticException
βββ IOException, SQLException, ParseException (Checked)
5. Difference between throw
and throws
?
Answer: throw
is used to explicitly throw an exception, while throws
is used in method signatures to declare exceptions that might be thrown.
void myMethod() throws IOException {
throw new IOException("File not found");
}
This is a commonly asked question in Deloitte Java Full Stack Developer Interview Questions.
πΉ Coding / DSA Round Questions
6. Detect a cycle in a linked list.
Answer:
public boolean hasCycle(ListNode head) {
ListNode slow = head;
ListNode fast = head;
while (fast != null && fast.next != null) {
slow = slow.next;
fast = fast.next.next;
if (slow == fast) return true;
}
return false;
}
Explain how Floyd’s Cycle Detection Algorithm works.
7. Reverse a string without using built-in reverse methods.
Answer:
public String reverseString(String input) {
StringBuilder sb = new StringBuilder();
for (int i = input.length() - 1; i >= 0; i--) {
sb.append(input.charAt(i));
}
return sb.toString();
}
πΉ Spring Boot & Java Frameworks
8. What is the difference between @Component
, @Service
, and @Repository
?
Answer:
All three are stereotype annotations used to declare beans.
@Component
: Generic bean@Service
: Business logic@Repository
: DAO layer, with exception translation feature
9. What is Dependency Injection in Spring?
Answer: Dependency Injection (DI) allows Spring to inject dependencies automatically instead of creating objects manually using new
. Helps with loose coupling and testing.
Example:
@Service
public class UserService {
private final UserRepository repo;
@Autowired
public UserService(UserRepository repo) {
this.repo = repo;
}
}
πΉ SQL and Database
10. Write a SQL query to fetch the second highest salary.
Answer:
SELECT MAX(salary) FROM employee
WHERE salary < (SELECT MAX(salary) FROM employee);
This is a favorite in Deloitte Java Interview Questions for 3 Years Experienced roles.
11. How would you optimize a slow SQL query?
Answer: Suggestions include:
- Use EXPLAIN to check execution plan
- Add indexes
- Avoid
SELECT *
- Use joins smartly, and avoid subqueries where possible
πΉ Managerial + Senior Consultant Java Questions
12. How do you handle production issues under pressure?
Answer: I usually follow a structured approach: check logs, replicate issue in staging, isolate the module, apply hotfix if necessary, and then analyze the root cause for a long-term fix. Communicating early with stakeholders is also key.
13. How do you ensure code quality in a large team?
Answer: I encourage:
- Writing unit & integration tests
- Following code reviews
- Using tools like SonarQube
- Following SOLID principles and clean code practices
This is a common in Deloitte Senior Consultant Java Interview Questions.
π Final Tips for Deloitte Java Developer Interview
- Be clear with Java fundamentals
- Brush up on your basic Spring Boot and REST concepts
- Practice Stream API, Array, String coding and SQL regularly
- Prepare for scenario-based and behavioural questions
FAQs
Q1: How many rounds are there in Deloitte Java Developer Interview?
Usually 2-3: Online Test, 1β2 Technical Rounds, followed by Managerial/HR.
Q2: Do Deloitte interviews focus on projects?
Yes. Expect questions like: βWhich module did you own?β, βHow did you solve performance issues?β
Q3: Is SQL mandatory?
Absolutely. CRUD queries, joins, group by, and optimization are regularly asked.
π Useful Resources
Covers frequently asked Java questions with code examples and explanations:
.