We are sharing the top 1000 Java interview questions , these questions are frequently asked by the recruiters. Java interview questions can be asked from any core java topic . So here we tried our best to provide you the java interview questions and answers for experienced which should be in your to do list before facing java questions in technical interview.
Java is one of the most popular programming language. There is a growing demand for Java Developer jobs in technology companies. In this section we have the top interview questions on Abstraction in java.
Once you go through them in the first pass, mark the questions that you could not answer by yourself. Then, in second pass go through only the difficult questions.
After going through this book 2-3 times, you will be well prepared to face a technical interview for a Java Developer position from Software Engineer level to Principal Engineer level.
All the best!
Section VII- Abstraction
62. What is Abstraction in Object Oriented programming?
Abstraction is the process of hiding certain implementation details of an object and showing only essential features of the object to outside world.
It is different from Abstract class in Java.
Abstraction process identifies commonalities and hides the complexity of implementation. It helps us in focusing on the interface that we share with the outside world.
63. How is Abstraction different from Encapsulation?
Abstraction happens at class level design. It results in hiding the implementation details. Encapsulation is also known as “Information Hiding”. An example of encapsulation is marking the member variables private and providing getter and setter for these member variables.
64. What is an abstract class in Java?
An abstract class in Java has one or more abstract methods. An abstract method is just declared in the abstract class, but it is not implemented.
An abstract class has to be extended in Java and its abstract methods have to be implemented by a child class. Also Java does not allow new instance of Abstract class.
65. Is it allowed to mark a method abstract method without marking the class abstract?
No. Java specification says that if there is at least one abstract method in a class, the class has to be marked abstract.
66. Is it allowed to mark a method abstract as well as final?
No. It will be contradictory statement to mark a method abstract as well as final.
An abstract method has to be overridden by a child class. And a final method cannot be overridden. Therefore a method can be either abstract or final in Java.
67. Can we instantiate an abstract class in Java?
No. We cannot create an instance of an abstract class in Java.
68. What is an interface in Java?
An Interface in Java is an abstract type blueprint of a class. It contains the methods that a class must implement. It is like a protocol.
It has method signatures and constant declarations.
69. Is it allowed to mark an interface method as static?
Yes, from Java 8 onwards, we can define static and default methods in an interface. Prior to Java 8, it was not allowed.
70. Why an Interface cannot be marked as final in Java?
A final method cannot be overridden. But an interface method has to be implemented by another class. So the interface method cannot be marked as final.
71. What is a marker interface?
There are interfaces that do not have any data member or methods. These interfaces are called Marker interface.
E.g. Serializable, Cloneable, Remote etc.
72. What can we use instead of Marker interface?
We can use annotations instead of Marker interface.
73. How Annotations are better than Marker Interfaces?
Annotations serve the purpose of conveying metadata about the class to its consumers without creating a separate type for it.
Annotations are more powerful than a Marker interface. They allow programmers to pass more sophisticated information to classes that "consume" it.
74. What is the difference between abstract class and interface in Java?
Differences between Abstract class and Interface are as follows:
1. An abstract class can have implemented methods with body (non-abstract methods). Interface has only abstract methods. From Java 8 onwards, interface can have static/default methods in implemented form.
2. An abstract class can have instance member variables. An interface cannot have instance variables. It can only have constants.
3. An abstract class can have a constructor. Interface cannot have constructor. It has to be implemented by another class.
4. A class can extend only one abstract class. A class can implement more than one interface.
75. Does Java allow us to use private and protected modifiers for variables in interfaces?
No. All the variables in an interface are implicitly public.
76. How can we cast to an object reference to an interface reference?
An Object that implements an Interface can be cast to the same Interface. Since An Object implementing an Interface already provides implementation for the methods of that Interface, it is allowed to do so as per the rules of Inheritance.
Recommended Posts
Top 1000 Java Interview Questions & Answers - Section VI - Polymorphism
Top 1000 Java Interview Questions & Answers - Section V - Method Overloading and Overriding
Top 1000 Java Interview Questions & Answers - Section I - Java Basics
Top 1000 Java Interview Questions & Answers - Section II - OOPs ( Object Oriented Programming )
Top 1000 Java Interview Questions & Answers - Section III - Inheritance
Top 1000 Java Interview Questions & Answers - Section IV - Static
Core Java Important Questions Part 1
Core Java Important Questions Part 2
Core Java Important Questions Part 3
Core Java Important Questions Part 4
Core Java Important Questions Part 5
Core Java Important Questions Part 6
Core Java Important Questions Part 7
Core Java Important Questions Part 8
Core Java Important Questions Part 9
Java Collections Interview Questions Part 1
Java Collections Interview Questions Part 2
Java Collections Interview Questions Part 3
Java MCQs with Answers Set III
If you have any doubts join the discussion below ,our Moderator will reply to your Queries