advance java interview questions: 40 Advanced Java Interview Questions and Sample Answers


Answer ( 1 )


    Java interview questions can be tricky and daunting. As a Java developer, you will likely face these questions in your career and you need to prepare yourself. In this post, we’ll go over 40 advanced Java interview questions and give sample answers for each one!

    What is an abstract class?

    An abstract class is a class that cannot be instantiated. Abstract classes are useful for defining common methods and fields in an inheritance hierarchy, but they don’t provide any implementation of these methods or fields.

    Abstract classes can have methods that are not implemented. For example, here’s an abstract class:

    public abstract class Shape {

    public void draw(); // method declaration (must be implemented)

    } A subclass can override the method, but it must provide an implementation. This is why abstract classes cannot be instantiated: there is no way to call a constructor without first knowing which concrete class you’re creating.

    What are the methods of an interface?

    • Public abstract methods
    • Default methods
    • Interface methods
    • Methods of an interface can be either abstract or default. If a method is declared as public, then it is called a public abstract method. Similarly, if a method is declared as default, then it’s called a default method.

    What is a constructor reference?

    A constructor reference is a reference to an object of a class that is used to construct an object of that class. For example:

    public class MyClass {

    private int x; // We declare private variables here

    public MyClass() { this(); // This calls another constructor in the same class }

    // … other methods and variables go here … }

    What is an inner class?

    Inner classes are those that are defined within another class. They are also known as local classes. These inner classes can access the members of their outer class and also have access to local variables of their enclosing scope.

    Describe how to override a method in Java.

    In Java, it is possible to override a method. Overriding means that you are defining a new method with the same name, but different signature and return type.

    To override a method in Java, you can use the keyword “override” or “super”.

    Is a Non-static nested class allowed to access static members of it’s enclosing class?

    No, it is not allowed to access static members of it’s enclosing class. A non-static nested class can access only non-static members of it’s enclosing class.

    What are Nested Classes in java and their types?

    Nested classes are classes that are defined inside other classes. There can be static or non-static nested classes.

    A nested class can access the fields and methods of its enclosing class, but not their private members, unless they’re marked as “protected”.

    How do you create and use a static nested class in java?

    Static nested classes are used to create static utility classes. They can access static methods and static variables of the enclosing class. Static nested classes are created in the same way as any other class, except that they must be declared as static:

    public class Outer {

    public static void main(String[] args) {

    Outer outer = new Outer();

    NestedClass nested = new NestedClass();


    What is the difference between instance variables and local variables?

    • Instance variables are stored in memory, but local variables are stored in the stack.
    • Instances are created when an object is created, but local variables are created when you call a method.
    • Instances can be accessed by all methods of a class, but local variables only by the method where they were created.

    Why should you always use final for constants in java?

    In Java, a constant is a variable whose value cannot be changed after it has been initialized.

    The final keyword can be used to declare constants in Java. The following code example shows how to create a constant:

    public class MyClass {

    The final keyword is often used for defining constants because it prevents you from accidentally changing the value later on during runtime.

    How do you make your code more readable by using comments in java? Section – 15 , 16, 17, 18 , 19 , 20

    Commenting your code is an important aspect of writing good Java code. Comments are used to explain what a piece of code is doing, why it’s being done and how it works. They can also be used to clarify complex algorithms or processes, as well as help other programmers understand the logic behind your code.

    When writing comments in Java, there are two main types: single-line comments and multi-line comments (or block comments). Single-line comments begin with two forward slashes (//) followed by whatever text you want to write; they end at the end of line. Multi-line comments are enclosed within /* and */ characters; these blocks should be indented four spaces from both sides so they stand out as separate from actual code statements:

    // This is a single-line comment

    /* And this is a multi-line comment */

    The information you have just learned will help you to answer the most common Java interview questions. Remember that there are many other things that you can talk about, but it’s important to keep your answers concise and focused on the topic at hand.

Leave an answer