A transient variable is a variable that may not be serialized.
The Window, Frame and Dialog classes use a border layout as their default layout.
Threads block on I/O (that is enters the waiting state) so that other threads may execute while the I/O Operation is performed.
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 Observable objects.
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.