Advanced Java Questions and Answer for Interview
1. What is a transient variable?
A transient variable is a variable that may not be serialized.
2. Which containers use a border Layout as their default layout?
Window, Frame and
Dialog classes use a border layout as their default layout.
3. Why do threads block on I/O?
Threads block on I/O (that is enters the waiting state) so that other threads may execute while the I/O Operation is performed.
4. How are Observer and Observable used?
Objects that subclass the
Observable class maintain a list of observers. When an
Observable object is updated it invokes the
update() method of each of its observers to notify the observers that it has changed state. The Observer interface is implemented by objects that observe
5. What is synchronization and why is it important?
With respect to multithreading, synchronization is the capability to control the access of multiple threads to shared resources. Without synchronization, it is possible for one thread to modify a shared object while another thread is in the process of using or updating that object's value. This often leads to significant errors.
6. Can a lock be acquired on a class?
Yes, a lock can be acquired on a class. This lock is acquired on the class's
7. What's new with the stop(), suspend() and resume() methods in JDK 1.2?
stop(), suspend() and
resume() methods have been deprecated in JDK 1.2.
8. Is null a keyword?
null is not a keyword.
9. What is the preferred size of a component?
The preferred size of a component is the minimum component size that will allow the component to display normally.
10. What method is used to specify a container's layout?
setLayout() method is used to specify a container's layout.