This repository contains interview questions for Java developers.
- Core
- Collections
- Concurrency
- Spring
- Servlet
- Hibernate
- Git
- Maven
- Microservices
- JavaScript
- Linux
- Algorithms
- Patterns
- React
- REST
- SQL
- Test
- Transactions
- RabbitMQ
- What's new in Java 8?
- What is the main difference between Stream API and Collection?
- What are the memory types in Java?
- What is java agent?
- Possible Performance Tools for Java?
- What is java profiler?
- What is stop the world?
- What is the difference between int, Integer and AtomicInteger?
- How i++ will work for Integer?
- What can you say about interface constants?
- What is the contract between equals and hashcode?
- What are the rules for overriding equals/hashcode methods?
- Are the same fields needed for equals/hashcode implementation?
- What are the purposes of inner classes?
- What is better interfaces or abstract classes?
- Do inner classes have access to private fields from outer class?
- What are the differences between static nested classes and non-static nested classes?
- What should be avoided in parallel stream?
- What are the methods of Object class?
- What is Jmeter?
- Possible Ways to Capture Java Heap Dumps?
- What is the result of this code:
- What is the complexity for get in Hashmap?
- What is the complexity for get in Hashmap for keys with hashcode = 1?
- What is the hierarchy of collections?
- What is the difference between LinkedList and ArrayList?
- What is better to use LinkedList or ArrayList?
- What is the implementation of HashMap?
- What are the implementations of Map?
- What is the complexity of removing the last element from LinkedList?
- What are the differences between Set and Map?
- Possible maps in concurrency?
- Implement custom version of java.util.stream.Stream with filter/map methods
- When is it better to use foreach loop instead of Iterable.forEach()?
- What is usage of wait/notify methods?
- Where wait() can be used?
- What is the keyword synchronized?
- What is the keyword volatile?
- How volatile is related to happens before?
- What are the concurrent collections?
- What is CopyOnWriteArrayList?
- What can you say about ConcurrentHashMap?
- What are the benefits of using ConcurrentHashMap over HashTable?
- What is the synchronized access?
- What is the monitor for non-static synchronized method?
- What are possible ways for synchronization threads?
- How to wait for finish of thread?
- What is the result of this code?
- Change the code for getting deadlock
- How make spring service thread-safe?
- What is bean?
- How bean gets into the container?
- What are the possible bean scopes?
- What is the difference @Service between @Component?
- How to call a method after bean initialization?
- What is the default scope?
- What is the prototype scope?
- What are the possible ways of Dependency Injection?
- Where better to use dependency injection via constructor? Where via setter?
- How to catch the exceptions for controllers?
- What is the difference between BeanFactory and FactoryBean?
- What is the difference Spring and Spring Boot?
- How to add own auto-configurations?
- Where can be stored the list of auto-configurations in META-INF?
- What are the possible ways of configurations in Spring?
- What is the lookup method?
- What is declarative transaction in Spring?
- What creates a proxy?
- Does @transactional method work in the case of execution in the same class?
- What is environment?
- How does auto-configuration work?
- What is the difference between @Resource and @Autowired annotations?
- What is the feature in Spring Boot for setting up the dependencies?
- Where does Spring Boot application begin?
- What is servlet?
- What is difference between parameters and attributes?
- What is the life cycle of servlet?
- What is the servlet mapping?
- What is detached entity?
- What is the use of flush?
- What are the cache levels?
- What is the first-level cache?
- What is the difference between merge and rebase?
- What is git reset?
- What is the difference between soft reset and hard reset?
- What is the difference between Maven and Gradle?
- How will work Maven in the case of multiple version of the same dependency?
- What is the dependency management in Maven?
- Does maven support inheritance for pom files?
- What are the possible ways for communication between microservices?
- What is exchange in message queue?
- What are the benefits of microservices?
- What are the disadvantages of microservices?
- What are the possible issues in microservices
- What are the possible solutions for the case when one service is not available?
- What is RabbitMQ?
- What is the difference between synchronous and asynchronous communication?
- What are possible ways for implementing authentication in microservices?
- What is Eventual consistency?
- What are possible variable scopes?
- What is bind? call & apply?
- What is losing of context in js?
- Is Javascript single threaded?
- What is closure in js?
- How to check if element exists in html?
- 2 functions with the same name but with different number of parameters. Can be the issues in this case?
- Which architectural patterns you know?
- What does it mean single responsibility?
- What is the difference between facade and proxy/gateway?
- What can we do in the case of constructor with big number of parameters?
- How can be implemented builder?
- What is pattern Visitor?
- What is the issue can be solved by visitor?
- What can you say about pattern observer?
- How to initialize object depends on type?
- Why Dependency Injection is needed?
- What is rest architecture? What are the requirements?
- Is there state in rest architecture?
- Can be used query params in rest architecture?
- What is the difference get and post?
- What is the difference between soap and rest?
- Is it correct to update something during get request?
- Is it possible to use body in get requests?
- What are possible types of requests for http protocol?
- Why method options is needed?
- What is the difference between put and post?
- What can be used as rest client?
- How http protocol work?
- What are the possible solutions in the case of big number of parameters for search method?
- What is having in sql?
- What are the possible issues with indexes?
- Sql works very slowly, what are the possible improvements (the database is MySQL, for example)?
- What is the difference between integration and unit tests?
- Unit test executes code from 2 classes, is it correct? Is it unit or integration test?
- What can be used for unit tests?
- What is transaction?
- What are the requirements for transactions?
- What is a distributed transaction?
- What are isolation levels?
- What are the possible issues in the case of parallel access by transactions?
- What are possible options for implementing transactions in microservices
- What is the difference between optimistic and pessimistic locking?
- Is it possible to use transaction for select statements?