Advanced Java Interview Questions and answers


Question.1   What is the purpose of garbage collection in Java, and when is it used?

Answer:   The purpose of garbage collection is to identify and discard objects that are no longer needed by a program so that their resources can be reclaimed and reused. A Java object is subject to garbage collection when it becomes unreachable to the program in which it is used.
Question.2    Describe synchronization in respect to multithreading.
Answer:   With respect to multithreading, synchronization is the capability to control the access of multiple threads to shared resources. Without synchonization, it is possible for one thread to modify a shared variable while another thread is in the process of using or updating same shared variable. This usually leads to significant errors.
[sociallocker]
Question.3   Explain different way of using thread?
Answer:   The thread could be implemented by using runnable interface or by inheriting from the Thread class. The former is more advantageous, ’cause when you are going for multiple inheritance. the only interface can help.
Question.4   What are pass by reference and passby value?
Answer:  Pass By Reference means the passing the address itself rather than passing the value. Passby Value means passing a copy of the value to be passed.
Question.5 What is HashMap and Map?
Answer:  Map is Interface and Hashmap is class that implements that.
Question.6    Difference  between HashMap and HashTable?
Answer:  The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls. (HashMap allows null values as key and value whereas Hashtable doesnt allow). HashMap does not guarantee that the order of the map will remain constant over time. HashMap is unsynchronized and Hashtable is synchronized.
Question.7   Difference between Vector and ArrayList?
Answer:   Vector is synchronized whereas arraylist is not.
Question.8   Difference between Swing and Awt?
Answer:  AWT are heavy-weight componenets. Swings are light-weight components. Hence swing works faster than AWT.
Question.9  What is the difference between a constructor and a method?
Answer:  A constructor is a member function of a class that is used to create objects of that class. It has the same name as the class itself, has no return type, and is invoked using the new operator. A method is an ordinary member function of a class. It has its own name, a return type (which may be void), and is invoked using the dot operator.
Question.10   What is an Iterator?
Answer:  Some of the collection classes provide traversal of their contents via a java.util.Iterator interface. This interface allows you to walk through a collection of objects, operating on each object in turn. Remember when using Iterators that they contain a snapshot of the collection at the time the Iterator was obtained; generally it is not advisable to modify the collection itself while traversing an Iterator.
Question.11   What is the difference between an Interface and an Abstract class?
Answer:  An abstract class can have instance methods that implement a default behavior. An Interface can only declare constants and instance methods, but cannot implement default behavior and all methods are implicitly abstract. An interface has all public members and no implementation. An abstract class is a class which may have the usual flavors of class members (private, protected, etc.), but has some abstract methods.
Question.12  What is the purpose of garbage collection in Java, and when is it used?
Answer:   The purpose of garbage collection is to identify and discard objects that are no longer needed by a program so that their resources can be reclaimed and reused. A Java object is subject to garbage collection when it becomes unreachable to the program in which it is used.
Question.13   Describe synchronization in respect to multithreading.
Answer:   With respect to multithreading, synchronization is the capability to control the access of multiple threads to shared resources. Without synchonization, it is possible for one thread to modify a shared variable while another thread is in the process of using or updating same shared variable. This usually leads to significant errors.
Question.14  Explain different way of using thread?
Answer:   The thread could be implemented by using runnable interface or by inheriting from the Thread class. The former is more advantageous, ’cause when you are going for multiple inheritance..the only interface can help.
Question.15  What are pass by reference and passby value?
Answer:   Pass By Reference means the passing the address itself rather than passing the value. Passby Value means passing a copy of the value to be passed.
Question.16 How does Java handle integer overflows and underflows?
Answer:  It uses those low order bytes of the result that can fit into the size of the type allowed by the operation.
Question.17  What is the Vector class?
Answer:  The Vector class provides the capability to implement a growable array of objects
Question.18   What modifiers may be used with an inner class that is a member of an outer class?
Answer:   A (non-local) inner class may be declared as public, protected, private, static, final, or abstract.
Question.19  What is the difference between yielding and sleeping?
Answer:   When a task invokes its yield() method, it returns to the ready state. When a task invokes its sleep()method, it returns to the waiting state

Followers