The following are the most commonly asked questions in a Java interview. These are all actual exam question which I have been asked in various interviews (around 20 interviews) and are in fact have been asked repeatedly in those interviews be it telephonic or f2f interviews. Even now I also ask questions from these topics and you can expect to be asked 5-10 questions out of these.
I am not providing answers for these as it will be reinventing of wheel. You can Google these questions as it is and find answers to them. Don't forget to write sample programs around each of these question. I am sure you will come to know more if you practice yourself.
1) What are the four principles of Object Oriented Languages like Java?
2) Is Java a pure object oriented language?
3) How will you write an immutable class?
4) What is the difference between Comparable and Comparator interfaces in Java?
5) What is hashcode and equals contract?
6) What is the difference between == and equals method?
7) What are wrapper classes? Why they are declared as final classes?
8) What is the difference between String and StringBuffer classes?
9) What is the way to store the integer value in a string object to an integer variable?
10) What are sorted collections in Java?
11) Why is String class declared as final class?
12) What is JDBC API?
13) What are checked and unchecked exceptions?
14) What is final, finally and finalize?
15) What is weakhashmap?
16) What is the purpose of reflection API?
17) What is serialVersionUID?
18) What is bucketing in Java?
19) How does Java manages the threads?
20) What are memory leaks and how to detect/avoid them?
21) What is the order of execution of blocks in a Java program?
22) What are the exception related rules in overloading and overriding?
23) What are the different ways of creating a thread?
24) What is inter thread communication?
25) What are instance and class level locks? What is synchronization?
26) What is the difference between IS-A and HAS-A relationship?
27) What is cloning and CloneNotSupported Exception?
28) What is the difference between JAR, WAR and EAR files?
29) What are the coding standards for naming variables, constants, methods and classes?
30) What is a literal and what is special about String literals?
31) What is flyweight design pattern?
32) How will you create a Singleton class? Is it thread safe?
33) What is the difference between throw and throws clause?
34) Can one access the private members of class using reflection API?
35) What is the purpose of instanceof operator?
36) Under what circumstances, the finally block in a program may not run?
37) What is the difference between private, protected, default and public access specifiers?
38) What are this and super keywords?
39) What are transient and volatile keywords?
40) How many package statements can a program have?
41) Are all the classes specified in import statement actually imported?
42) Can an inheritance relationship exist between two interfaces?
43) What is Unicode?
44) What are annotations in Java?
45) What are the various forms of polymorphism?
46) What is the meaning of various keywords specified in creating the main method?
47) What is the purpose of ^ operator?
48) What is the difference between pass by value and pass by reference?
49) What are the various types of inner classes?
50) What are the various memory areas in JVM and what kind of information is stored in each of them?
I am not providing answers for these as it will be reinventing of wheel. You can Google these questions as it is and find answers to them. Don't forget to write sample programs around each of these question. I am sure you will come to know more if you practice yourself.
1) What are the four principles of Object Oriented Languages like Java?
2) Is Java a pure object oriented language?
3) How will you write an immutable class?
4) What is the difference between Comparable and Comparator interfaces in Java?
5) What is hashcode and equals contract?
6) What is the difference between == and equals method?
7) What are wrapper classes? Why they are declared as final classes?
8) What is the difference between String and StringBuffer classes?
9) What is the way to store the integer value in a string object to an integer variable?
10) What are sorted collections in Java?
11) Why is String class declared as final class?
12) What is JDBC API?
13) What are checked and unchecked exceptions?
14) What is final, finally and finalize?
15) What is weakhashmap?
16) What is the purpose of reflection API?
17) What is serialVersionUID?
18) What is bucketing in Java?
19) How does Java manages the threads?
20) What are memory leaks and how to detect/avoid them?
21) What is the order of execution of blocks in a Java program?
22) What are the exception related rules in overloading and overriding?
23) What are the different ways of creating a thread?
24) What is inter thread communication?
25) What are instance and class level locks? What is synchronization?
26) What is the difference between IS-A and HAS-A relationship?
27) What is cloning and CloneNotSupported Exception?
28) What is the difference between JAR, WAR and EAR files?
29) What are the coding standards for naming variables, constants, methods and classes?
30) What is a literal and what is special about String literals?
31) What is flyweight design pattern?
32) How will you create a Singleton class? Is it thread safe?
33) What is the difference between throw and throws clause?
34) Can one access the private members of class using reflection API?
35) What is the purpose of instanceof operator?
36) Under what circumstances, the finally block in a program may not run?
37) What is the difference between private, protected, default and public access specifiers?
38) What are this and super keywords?
39) What are transient and volatile keywords?
40) How many package statements can a program have?
41) Are all the classes specified in import statement actually imported?
42) Can an inheritance relationship exist between two interfaces?
43) What is Unicode?
44) What are annotations in Java?
45) What are the various forms of polymorphism?
46) What is the meaning of various keywords specified in creating the main method?
47) What is the purpose of ^ operator?
48) What is the difference between pass by value and pass by reference?
49) What are the various types of inner classes?
50) What are the various memory areas in JVM and what kind of information is stored in each of them?
Hi,
ReplyDeleteJust to add now days people ask
Why String is immutable in Java
quite a lot which is quite logical because String is most used class in any java application.
Thanks
Javin
FIX Protocol tutorial
Very good list. Should add to it why String is final.
ReplyDeleteThanks for such a big response to this post.
ReplyDelete@javarevisited, @gautam
The question about final sting class is already there in the list at number 11
What correlation have you seen between people who can provide correct answers to these questions and people who are effective Java programmers?
ReplyDelete@pholser, the interview questions are purely theoretical in nature and writing Java programs is about using these concepts.
ReplyDeleteFor example, if someone doesn't know about serialVersionUID, how can make use of this feature of serialization.
So it does make a difference to know the answers to these questions.
But the worst part is that about 75-80% are not even aware of answers to these questions leave aside writing good programs.
Thanks for the list, some of them I definitely was rusty on. Thanks for the refresh =)
ReplyDeleteI think that someone should seriously just ask someone about design patterns in java. I mean... the flyweight is great, but honestly the amount of developers Ive found doing MAJOR serverside back-end development and have no concept of a factory, or strategy pattern bewilders the mind.
It seems that the problem with java is that the developers do not grow up with the design patterns in mind unlike a language like grails or ruby. I think a thorough study of some of the standard java libraries like the BufferedReaders and the IO system using the decorator pattern should be a major study by any developer.
nice post sandeep.
ReplyDeleteIt took 2 days for me to recap all answers for all the questions.
Thanks
Prasanth Jalasutram
http://prasanthaboutjava.blogspot.com/
This comment has been removed by the author.
ReplyDelete"What is the difference between pass by value and pass by reference?"
ReplyDeleteOne is a way of passing parameters in Java - the other isn't.
This question shouldn't be asked since it implies that Java has more than one way of passing parameters.
A better question is: "Is Java pass by reference or pass by value?" or maybe, maybe, "What is the difference between passing an object by reference and passing an object reference by value?"
I'm amazed no one ever asks "What is the difference between pass-by-name and pass-by-result" in a Java context. It is just as valid a question, as the one about "by-value/by-ref".
What is the difference between pass by value and pass by reference?
Good post, should mention StringBuilder in place of StringBuffer.
ReplyDeleteGood post, should mention StringBuilder in place of StringBuffer.
ReplyDeletenice post sandeep.
ReplyDeleteIt took 2 days for me to recap all answers for all the questions.
Thanks
Prasanth Jalasutram
http://prasanthaboutjava.blogspot.com/
Thanks for the list, some of them I definitely was rusty on. Thanks for the refresh =)
ReplyDeleteI think that someone should seriously just ask someone about design patterns in java. I mean... the flyweight is great, but honestly the amount of developers Ive found doing MAJOR serverside back-end development and have no concept of a factory, or strategy pattern bewilders the mind.
It seems that the problem with java is that the developers do not grow up with the design patterns in mind unlike a language like grails or ruby. I think a thorough study of some of the standard java libraries like the BufferedReaders and the IO system using the decorator pattern should be a major study by any developer.
@pholser, the interview questions are purely theoretical in nature and writing Java programs is about using these concepts.
ReplyDeleteFor example, if someone doesn't know about serialVersionUID, how can make use of this feature of serialization.
So it does make a difference to know the answers to these questions.
But the worst part is that about 75-80% are not even aware of answers to these questions leave aside writing good programs.
Thanks for such a big response to this post.
ReplyDelete@javarevisited, @gautam
The question about final sting class is already there in the list at number 11
Hi,
ReplyDeleteJust to add now days people ask
Why String is immutable in Java
quite a lot which is quite logical because String is most used class in any java application.
Thanks
Javin
FIX Protocol tutorial
"What is the difference between pass by value and pass by reference?"
ReplyDeleteOne is a way of passing parameters in Java - the other isn't.
This question shouldn't be asked since it implies that Java has more than one way of passing parameters.
A better question is: "Is Java pass by reference or pass by value?" or maybe, maybe, "What is the difference between passing an object by reference and passing an object reference by value?"
I'm amazed no one ever asks "What is the difference between pass-by-name and pass-by-result" in a Java context. It is just as valid a question, as the one about "by-value/by-ref".
What is the difference between pass by value and pass by reference?
hi friends,
ReplyDeletenice efforts...very useful questions
i have seen someother website for java programming interview questions and answers.you can download it in pdf.
cheers.hope you love it and all the best for your interview preparation.
here is the link
java programming interview questions and answers
Very good standard collection
ReplyDeleteHi..
ReplyDeleteThanks a lot for sharing the valuable information...
Get the Latest Interview questions on .net, php, java, core java, c, c++, ccna, oracle and many more....
here is the link for the latest interview questions on core java for both experienced and beginners..
core java interview questions and answers for experienced
check more interview questions at http://www.javacpass.com/javacpass/interviews.aspx
ReplyDeleteCheck new Java related tutorials, Blogs and Articles on www.javacpass.com
ReplyDeletea very good basic java question and dedicated java forum. interested Java beginners can join here and contribute to the community.Its a fresh startup but would be encouraging if java contribters join this group
ReplyDeleteThanks for the list.
ReplyDelete.net obfuscation
Hi there, awesome site. I thought the topics you posted on were very interesting. I tried to add your RSS to my feed reader and it a few. take a look at it, hopefully I can add you and follow.
ReplyDeleteHi
ReplyDeleteI read this post 2 times. It is very useful.
Pls try to keep posting.
Let me show other source that may be good for community.
Source: Research technician interview questions
Best regards
Jonathan.