Filter interviews by
Aggregation and composition are two types of relationships between objects in object-oriented programming.
Aggregation is a relationship where one object is a container for other objects, but the contained objects can exist independently.
Composition is a relationship where one object is composed of other objects, and the composed objects cannot exist independently.
Aggregation is represented by a 'has-a' relationship, wh...
Executor framework is a Java framework that provides a way to execute tasks asynchronously using a thread pool.
It provides a way to manage threads and execute tasks in a thread pool
It allows for better resource management and improved performance
It supports different types of thread pools such as fixed, cached, and scheduled
Example: Executors.newFixedThreadPool(10) creates a thread pool with 10 threads
Two threads can communicate through shared memory or message passing.
Shared memory: Both threads can access the same memory location to exchange data.
Message passing: One thread sends a message to another thread through a communication channel.
Synchronization primitives like locks, semaphores, and barriers can be used to coordinate access to shared resources.
Examples: POSIX threads, Java threads, Windows threads.
A functional interface is an interface with only one abstract method. It can be implemented using lambda expressions.
Functional interfaces are used in Java 8's functional programming features.
Examples of functional interfaces include Runnable, Comparator, and Callable.
To create your own functional interface, use the @FunctionalInterface annotation.
The interface should have only one abstract method, and can have default...
Java8 introduced several new features including lambda expressions, streams, and default methods.
Lambda expressions allow for functional programming and simplify code.
Streams provide a way to process collections of data in a functional way.
Default methods allow for adding new methods to interfaces without breaking existing implementations.
Other features include the Date and Time API, Nashorn JavaScript engine, and impr...
Stream class methods include read, write, seek, tell, flush, and more.
read() - reads data from the stream
write() - writes data to the stream
seek() - moves the stream position to a specified location
tell() - returns the current position in the stream
flush() - flushes any buffered data to the stream
eof() - returns true if the end of the stream has been reached
good() - returns true if the stream is in a good state
fail() -...
Future is an interface while CompletableFuture is a class that implements Future and provides additional methods.
Future is a basic interface for asynchronous programming in Java
CompletableFuture is a class that implements Future and provides additional methods like thenApply(), thenAccept(), etc.
CompletableFuture can be used to chain multiple asynchronous operations
CompletableFuture can also be used to handle exception...
Transactions in microservices ensure data consistency and integrity.
Use distributed transactions to ensure atomicity across multiple services.
Implement compensating transactions to handle failures and rollbacks.
Use event-driven architecture to maintain consistency between services.
Consider using a Saga pattern to manage long-running transactions.
Avoid two-phase commit as it can lead to performance issues and scalabilit
The @Transactional annotation is used in Spring to manage transactions in a declarative way.
It is used to define the scope of a transaction.
It can be applied at the class or method level.
It supports various attributes like propagation, isolation, timeout, and read-only.
It can be used with different transaction managers like JDBC, Hibernate, JPA, etc.
It rolls back the transaction if an exception is thrown.
It can be used...
HTTP methods are used to specify the type of action to be performed on a resource.
GET - retrieve information from the server
POST - submit data to the server
PUT - update a resource on the server
DELETE - remove a resource from the server
HEAD - retrieve headers from the server
OPTIONS - retrieve the supported HTTP methods for a resource
PATCH - update a resource partially on the server
EnableAutoConfiguration enables auto-configuration of Spring Boot application while ComponentScan scans for Spring components.
EnableAutoConfiguration automatically configures Spring Boot application based on classpath and other settings.
ComponentScan scans for Spring components and registers them as beans.
EnableAutoConfiguration is used in main application class while ComponentScan can be used in any configuration clas...
Top trending discussions
I applied via Naukri.com and was interviewed in Aug 2020. There were 3 interview rounds.
I applied via Recruitment Consultant and was interviewed in Nov 2020. There were 3 interview rounds.
I applied via Campus Placement and was interviewed before Feb 2020. There were 6 interview rounds.
I applied via Referral and was interviewed before Jan 2021. There were 5 interview rounds.
I applied via Approached by Company and was interviewed before Oct 2021. There were 2 interview rounds.
I have X years of domain experience.
I have worked in this domain for X years.
During my time in this domain, I have gained expertise in various areas such as...
I have worked on projects related to...
I have experience working with clients in this domain.
I keep myself updated with the latest trends and developments in this domain.
Senior Test Engineer
3
salaries
| ₹9.7 L/yr - ₹10.1 L/yr |
TCS
Accenture
Wipro
Cognizant