Learning is bateru
Answers to 15 Must Know Java Interview Questions After 2 Years of Experience
Note: Only short responses are provided for the questions.
If you feel that more depth or a correction is needed then visit the links or leave a comment below.
Core Java Questions with answers:
- What is the purpose of serialization?
Answer: Serialization is the conversion of an object to a series of bytes, so that the object can be easily saved to persistent storage or streamed across a communication link. The byte stream can then be deserialised converted into a replica of the original object.
Source | Example
Answer: Java Development Kit (JDK) is the most widely used Java Software Development Kit. Java Runtime Environment (JRE) is an implementation of the Java Virtual Machine which executes Java programs.
Answer: Equals is intended to check logical equality and == checks if both references point to same object. (Thanks Sandeep)
a == b; // Compares references, not values. a.equals(b); // Compares values for equality.
Answer: java.util.Comparator and java.lang.Comparable
java.util.Comparator compares some other class’s instances, while java.lang.Comparable compares itself with another object.
Answer: This deals with concurrent programming. The wait() and notify() methods are designed to provide a mechanism to allow a thread to be block until a specific condition is met.
However, java.util.concurrent should be used instead of wait() and notify() to reduce complexity.
Source | Java API | Java Technical Article
In general, unchecked exceptions represent defects in the program (bugs), which are normally Runtime exceptions.
Furthermore, checked exceptions represent invalid conditions in areas outside the immediate control of the program.
Answer: final is the keyword to declare a constant AND prevents a class from producing subclasses. (Thanks Tom Ellis)
finally is a block of code that always executes when the try block is finished, unless System.exit() was called. finalize() is an method that is invoked before an object is discarded by the garbage collector.
Answer: A Web server exclusively handles HTTP requests, whereas an application server serves business logic to application programs through any number of protocols.
Answer: Struts was adopted by the Java developer community as a default web framework for developing web applications
The MVC(Model–view–controller) an application that consist of three distinct parts. The problem domain is represented by the Model. The output to the user is represented by the View. And, the input from the user is represented by Controller.
Answer: Both method calls redirect you to new resource/page/servlet. The difference between the two is that sendRedirect always sends a header back to the client/browser, containing the data in which you wanted to be redirected.
Answer: Tiers are the physical units of separation or deployment, while layers are the logical units of separation.
Imagine that you re designing an e-commerce website. A 3 tier architecture would consist of web pages, a web server and a database, with the corresponding 3 layers being the Presentation , Business Logic and Database layers.
If you take the database tier and layer out then your have a 2 tier architecture.
Answer: Initiate, pull, branch, merge, commit, push.
(Init) Make your own repository. (Pull) Download an existing repository from a url. (Branch / Merge )Make revisions. Commit then push your modifications.
Git Cheat Sheet
Answer: JAR files (Java ARchive) allows aggregating many files into one, it is usually used to hold Java classes in a library.
WAR files (Web Application aRchive) stores XML, java classes, and JavaServer pages for Web Application purposes.
Answer: This deals with SQL. Left outer join preserves the unmatched rows from the first (left) table, joining them with a NULL row in the shape of the second (right) table.
Source | Joins Wiki
Answer: This deals with SQL. UNION only selects distinct values, UNION ALL selects all values.
Check out Effective Java (2nd Edition) to fresh up your Java skills.
Please leave a comment before you go. (click to exit )
I love to program, and discover new tech. Check out my stackoverflow and github accounts.