Java Interview Question #2
How do you run a Java application on the command line and set the classpath with multiple jars?
Some people will be thinking what!? but Ive met a lot of Java developers whove not run a Java application outside of an IDE for years.
java -cp /dev/myapp.jar:/dev/mydependency.jar com.codementor.MyApp
What is the difference between final, finalize and finally?
final is a Java keyword used to indicate that either a method can not override in a subclass, or a class can not be extended or a field can not be modified. finalize is a method that gets called on an instance of an Object when it is garbage collected. finally is a Java keyword used in exception handling to indicate a block of code that should always be run whether an exception is thrown or not.
Contiguous Memory Locations Are Usually Used For Storing Actual Values In An Array But Not In Arraylist Explain
In the case of ArrayList, data storing in the form of primitive data types is not possible. The data members/objects present in the ArrayList have references to the objects which are located at various sites in the memory. Thus, storing of actual objects or non-primitive data types takes place in various memory locations.
However, the same does not apply to the arrays. Object or primitive type values can be stored in arrays in contiguous memory locations, hence every element does not require any reference to the next element.
How Is The Creation Of A String Using New Different From That Of A Literal
When a String is formed as a literal with the assistance of an assignment operator, it makes its way into the String constant pool so that String Interning can take place. This same object in the heap will be referenced by a different String if the content is the same for both of them.
public bool checking
The checking function will return true as the same content is referenced by both the variables.
Conversely, when a String formation takes place with the help of a new operator, interning does not take place. The object gets created in the heap memory even if the same content object is present.
public bool checking
The checking function will return false as the same content is not referenced by both the variables.
Don’t Miss: Interview With Cfo
How To Write Your Java Developer Resume
Give your resume building a set direction to save time and effort. You can simply follow the below-mentioned stages to build an impeccable java developer resume:
- First Stage: Master Java Developer Resume
- Second Stage: First Draft of Java Developer Resume
- Third Stage: Final Draft of Java Developer Resume
Master Java Developer Resume
The first step to writing yoursoftware engineer resume is to draft the master resume where you simply stack all your essential professional information.
This gathered information can be used for two purposes resume building in the current timeline and future updates to your java experience resume.
This is simply a data dump from which you will pick and optimize information, so no need to pay much attention to the formatting. It should be understandable to you, thats it.
In the present, it will help you systematically collect all your relevant professional information, and as all your information is stored at one source, you wont need to look for scattered pieces of information but pick any required information from your master draft itself.
First Draft of Java Developer Resume
Here, you need to draft the following sections:
- Awards & recognition
- Additional information
The optional information is not as crucial as the obligatory ones. Still, if you have information that fits, it will enhance your application and may end up being the factor that got you shortlisted.
Final Draft of Java Developer Resume
Q4 What Are The Differences Between Forward Method And Sendredirect Methods
|forward sends the same request to another resource.||sendRedirect method sends new request always because it uses the URL bar of the browser.|
|forward method works at server side.||sendRedirect method works at client side.|
|forward method works within the server only.||sendRedirect method works within and outside the server.|
You May Like: How To Send Thank You Letter After Interview
Java Interview Question #31
Why doesnt the following code generate a NullPointerException even when the instance is null?
Test t = null t.someMethod publicstaticvoidsomeMethod
There is no need for an instance while invoking a static member or method, since static members belongs to a class rather than an instance.
A null reference may be used to access a class variable without causing an exception.
Java Interview Question #15
What is the contract between equals and hashCode of an object?
The only obligation is that for any objects o1 and o2 then if o1.equals is true then o1.hashCode == o2.hashCode is true.
Note that this relationship goes only one way: for any o1, o2 of some class C, where none of o1 and o2 are null, then it can happen that o1.hashCode == o2.hashCode is true BUT o1.equals is false.
Read Also: Interview Attire Womens
What Do You Understand By An Instance Variable And A Local Variable
Instance variables are those variables that are accessible by all the methods in the class. They are declared outside the methods and inside the class. These variables describe the properties of an object and remain bound to it at any cost.
All the objects of the class will have their copy of the variables for utilization. If any modification is done on these variables, then only that instance will be impacted by it, and all other class instances continue to remain unaffected.
Local variables are those variables present within a block, function, or constructor and can be accessed only inside them. The utilization of the variable is restricted to the block scope. Whenever a local variable is declared inside a method, the other class methods dont have any knowledge about the local variable.
Why Is It Said That The Length Method Of String Class Doesn’t Return Accurate Results
- The length method returns the number of Unicode units of the String. Let’s understand what Unicode units are and what is the confusion below.
- We know that Java uses UTF-16 for String representation. With this Unicode, we need to understand the below two Unicode related terms:
- Code Point: This represents an integer denoting a character in the code space.
- Code Unit: This is a bit sequence used for encoding the code points. In order to do this, one or more units might be required for representing a code point.
Now if a string contained supplementary characters, the length function would count that as 2 units and the result of the length function would not be as per what is expected.
In other words, if there is 1 supplementary character of 2 units, the length of that SINGLE character is considered to be TWO – Notice the inaccuracy here? As per the java documentation, it is expected, but as per the real logic, it is inaccurate.
Also Check: System Design Interview Preparation
Q6 How Does An Exception Propagate In The Code
If an exception is not caught, it is thrown from the top of the stack and falls down the call stack to the previous procedure. If the exception isnt caught there, it falls back to the previous function, and so on, until its caught or the call stack reaches the bottom. The term for this is Exception propagation.
Top 10 Java Interview Questions And Answers For 2022
Knowledge of Java is an important skill for developers. So important, that some employers require developers to have basic knowledge of this server-side language because its so useful for front-end and back-end development. If you’re a developer looking to land your first gig or move up the ladder to the next rung of your career, you need to prepare to answer basic Java interview questions in a way that demonstrates your skill. In this article, we cover the 45 most-asked questions in a Java interview and provide 10 example answers.
Recommended Reading: Best System Design Interview Prep
How Would You Connect A Java Application To A Database
Java developers need to be proficient in database integration and design.
Nearly all applications utilize some sort of database to store and edit content. That includes SQL-based platforms like MySQL to modern NoSQL systems like MongoDB.
The candidate should demonstrate how to connect to a local or networked database using the JDBC driver. If the job is for Android development, they should explain how to add the com.google.cloud.sql dependency to Gradle.
Give extra merit for Cloud database connectivity knowledge and experience.
Googles Firebase platform is used by Java developers to store data objects. Application development in AWS and Microsoft Azure use a variety of database types including:
- Relational e.g. Amazon RDS and SQL Server
- Key-value e.g. Amazon DynamoDB
- Graph e.g. Amazon Neptune
Although understanding database architecture isnt essential, its good to know. Candidates that display a thorough knowledge of the subject are worth taking note of.
Q6 How Does Cookies Work In Servlets
- Cookies are text data sent by server to the client and it gets saved at the client local machine.
- Servlet API provides cookies support through javax.servlet.http.Cookie class that implements Serializable and Cloneable interfaces.
- HttpServletRequest getCookies method is provided to get the array of Cookies from request, since there is no point of adding Cookie to request, there are no methods to set or add cookie to request.
- Similarly HttpServletResponse addCookie method is provided to attach cookie in response header, there are no getter methods for cookie.
Read Also: Questions To Ask The Cfo In An Interview
The Basics Of Computer Science Algorithms And Data Structures
Here is the simple question for you are you able to discuss algorithms? Algorithmic techniques and data structures are applied in solving programming challenges. Because of this, tech recruiters might test your knowledge of algorithms and data structures. Questions about algorithms and data structures are an excellent way for recruiters to find an intersection between practical experience and their talent. Sometimes, not being able to answer a question wont affect your performance. The hiring managers simply want to learn about your talent, but you should still prepare. Update your knowledge of basic algorithmic techniques for computational problems frequently arising in practical application. These may be sorting and searching, greedy algorithms, divide and conquer, dynamic programming. This step is especially useful for candidates with less experience and a great talent and understanding of computer science. Even if you dont have a lot of experience, hiring managers can discover the potential for incredible achievements in you.
What Are The Important Features Of The Java 10 Release
Java 10 is the first every-six-months from Oracle corporation, so its not a major release like earlier versions. However, some of the important features of Java 10 are:
- Local-Variable Type Inference
- Enhance java.util.Locale and related APIs to implement additional Unicode extensions of BCP 47 language tags.
- Enable the HotSpot VM to allocate the Java object heap on an alternative memory device, such as an NV-DIMM, specified by the user.
- Provide a default set of root Certification Authority certificates in the JDK.
Java 10 is mostly a maintenance release, however I really liked the local variable type inference feature. For a detailed overview of Java 10, please go through Java 10 Features.
Recommended Reading: Interview Questions To Ask A Cfo
Do You Use Github Or Another Vcs Tool
A Version Control System or VCS records changes to files that you can retrieve at a later date.
Most Java developers use a VCS to store all changes made to their source code. They can revert to working code if the current source breaks functionality. That could include reverting an entire project to just one page of code.
An online distributed VCS offers an even bigger advantage: code branching.
Other developers can mirror or clone the existing code then branch off on their own to develop it. Many popular open-source apps get developed this way. Changes get combined into the main branch and everyone benefits.
VCS is all about safeguarding code and promoting development in a team.
A candidates response should demonstrate these concepts. It should outline how versioning control works and why its important.
As Github powers the majority of VCS, the candidate should underline the platforms importance.
Preferably, they will have experience in Github versioning control. That includes setting up repositories and checking in/out code. Command-line experience is a bonus but GUI is fine too.
Senior Java Developer Interview Questions
When a developer achieves a senior level, usually with five or more years of experience, the interview questions for a core Java programmer or developer become more advanced than they are for beginners.
Applicants interviewing for a job as a senior Java developer should have strong technical, problem-solving, and critical thinking skills and the most important examples listed in a resume should reflect these traits when an interviewer says, walk me through your resume.
Usually, a bachelors degree in computer science or a related field is required in addition to years of industry experience, although some employers may be looking for further education. These same prime resume points will likely serve well in a graduate school resume as well.
Looking for a job? These position are hiring now near you:
Don’t Miss: Questions To Ask A Cfo In An Interview
Java Developer Resume: Additional Information
All the misfitting information can be mentioned in the additional information section. You can mention anything ranging from interesting hobbies to your knowledge of multiple languages.
Hirations Java Developer resume sample demonstrating an ideal additional information section for your reference:
You can also avail Hiration’s Online Resume Builder to curate the perfect software engineer resume.
Do You Need 5 Years Of Java Experience
When you have 5 years of experience as java developer, you need to have a good understanding of collections, multithreading concepts. If you are looking for the below queries then this post will help you as well. Java interview questions for 4 years experience Java interview questions for 6 years experience
You May Like: What To Wear For An Interview Women
Java Interview Question #26
What is the marker interface in Java?
The marker interface in Java is an interfaces with no field or methods. In other words, it an empty interface in java is called a marker interface. An example of a marker interface is a Serializable, Clonable and Remote interface. These are used to indicate something to the compiler or JVM.
What Do You Mean By Data Encapsulation
- Data Encapsulation is an Object-Oriented Programming concept of hiding the data attributes and their behaviors in a single unit.
- It helps developers to follow modularity while developing software by ensuring that each object is independent of other objects by having its own methods, attributes, and functionalities.
- It is used for the security of the private properties of an object and hence serves the purpose of data hiding.
Recommended Reading: Interview Questions For A Cfo
Q40 Why Java Strings Are Immutable In Nature
In Java, string objects are immutable in nature which simply means once the String object is created its state cannot be modified. Whenever you try to update the value of that object instead of updating the values of that particular object, Java creates a new string object. Java String objects are immutable as String objects are generally cached in the String pool. Since String literals are usually shared between multiple clients, action from one client might affect the rest. It enhances security, caching, synchronization, and performance of the application.
What Is Inner Class In Java
We can define a class inside a class and they are called nested classes. Any non-static nested class is known as an inner class. Inner classes are associated with the object of the class and they can access all the variables and methods of the outer class. Since inner classes are associated with the instance, we cant have any static variables in them.
We can have local inner class or anonymous inner class inside a class. For more details read java inner class.
Also Check: System Design Interview Prep
Java Interview Question #12
What is the problem with this code?
final Path path = Paths.get Files.lines.forEach
The problem is that the Stream returned by Files.lines is not closed.
This should be used instead:
Stream extends BaseStream, and BaseStream extends AutoCloseable. While this has no influence on streams you obtain from collections for instance, the stream returned by Files.lines is I/O bound. Neglecting to close it correctly may lead to a resource leak in the event of an error occurring while processing the stream.
What Is Static Import
If we have to use any static variable or method from other class, usually we import the class and then use the method/variable with class name.
import java.lang.Math //inside classdouble test = Math.PI * 5
We can do the same thing by importing the static method or variable only and then use it in the class as if it belongs to it.
import static java.lang.Math.PI //no need to refer class nowdouble test = PI * 5
Use of static import can cause confusion, so its better to avoid it. Overuse of static import can make your program unreadable and unmaintainable.
Recommended Reading: Best Interview Attire For A Woman
What Is A Final Class
This question requires a basic definition of final class and how it’s used.
Example:”In a final class, a method implemented by that class cannot be overridden and is not able to be inherited. The uses are to make sure methods from the class cannot be inherited and that you cannot make the class immutable.”