30+ TOP Java Swing Interview Questions & Answers
1. What’s Java Swing?
Swing is basscially a type of Toolkit which is GUI toolkit for Java. It is one part of the Java Foundation Classes (JFC). Swing includes graphical user interface (GUI) widgets such as text boxes, buttons, split-panes, and tables.
Swing widgets provide more sophisticated GUI components than the earlier Abstract Window Toolkit. Since they are written in pure Java, they run the same on all platforms, unlike the AWT which is tied to the underlying platform’s windowing system. Swing supports pluggable look and feel not by using the native platform’s facilities, but by roughly emulating them. This means you can get any supported look and feel on any platform. The disadvantage of lightweight components is slower execution. The advantage is uniform behavior on all platforms.
2. What is JFC?
JFC stands for Java Foundation Classes. The Java Foundation Classes (JFC) are a set of Java class libraries provided as part of Java 2 Platform, Standard Edition (J2SE) to support building graphics user interface (GUI) and graphics functionality for client applications that will run on popular platforms such as Microsoft Windows, Linux, and Mac OSX
3. What is AWT?
AWT is bassically stands for Abstract Window Toolkit. AWT enables programmers to develop Java applications with GUI components, such as windows, and buttons. The Java Virtual Machine (JVM) is responsible for translating the AWT calls into the appropriate calls to the host operating system.
4. What are the differences between Swing and AWT?
Many diff are there :
> AWT is heavy-weight components, but Swing is light-weight components.
> AWT is OS dependent because it uses native components, But Swing components are OS independent.
> We can change the look and feel in Swing which is not possible in AWT.
> Swing takes less memory compared to AWT.
> For drawing AWT uses screen rendering where Swing uses double buffering.
5. What are heavy weight components ?
A Heavyweight component is bassically associated with its own native screen resource which is generally known as a peer.
6. What is lightweight component?
A Lightweight component is the bassically one that “borrows” the screen resource of an ancestor , which means it has no native resource of its own — so it’s “lighter”.
7. What is double buffering ?
Double buffering is bassically the process of use of two buffers rather than one to temporarily hold data being moved to and from an I/O device. Double buffering increases data transfer speed because one buffer can be filled while the other is being emptied.
8. What is an event in Swing?
Event is basscially as Changing the state of an object is called an event.
9. What is an event handler in swing?
An Event handler is bassically a part of a computer program created to tell the program how to act in response to a specific event.
10. What is a layout manager?
A layout manager is an object that is used to organize components in a container.
11. What is clipping?
Clipping is the bassically the process of confining paint operations to a limited area or shape.
12. Which containers use a border Layout as their default layout in swing?
Many containers are there :
> The window,
> Frame and
> Dialog classes use a border layout as their default layout.
13. What is the preferred size of a component?
The preferred size of a component is the minimum component size, whihc will be allow the component to display normally.
14. What method is used to specify a container’s layout?
The setLayout() method is used to specify a container’s layout.
15. Which containers use a FlowLayout as their default layout?
The Panel and Applet classes use the FlowLayout as their default layout.
16. Which method of the Component class is used to set the position and size of a component?
Method of the Component class is used to set the position and size of a component. hat is defined as :
17. What is the What is the difference between invokeAndWait() and invokeLater()?
Mnay diff are there which is defined as :
> InvokeAndWait() method : in swing is synchronous. It blocks until Runnable task is complete.
> InvokeLater() method : in swing is asynchronous. It posts an action event to the event queue and returns immediately. It will not wait for the task to complete.
18. Why should any swing call back implementation execute quickly?
Callbacks are invoked by the event dispatch thread. Event dispatch thread blocks processing of other events as long as call back method executes.
19. What is an applet?
Applet is bassically a java program that runs inside a web browser.
20. What is the difference between applications and applets?
Many diff are there :
> Application must be run explicitly within Java Virtual Machine whereas applet loads and runs itself automatically in a java-enabled browser. Application starts execution with its main method whereas applet starts execution with its init method.
> Application can run with or without graphical user interface whereas applet must run within a graphical user interface. In order to run an applet we need a java enabled web browser or an appletviewer.
21. Which method is used by the applet to recognize the height and width?
Method is used by the applet to recognize the height and width which is defined as :
22. When we should go for codebase in applet?
If the applet class is not in the same directory,when we used to codebase.
23. What is the lifecycle of an applet?
An Applet is basscially lifecyacle is defined as :
> Init( ) method : called when an applet is first loaded.
> Start( ) method : called each time an applet is started .
> Paint( ) method : called when the applet is minimized or maximized .
> Stop( ) method : called when the browser moves off the applet’s page.
> Destroy( ) method : called when the browser is finished with the applet.
24. Which method is used for setting security in applets?
The Method is used for setting security in applets whihc is defined as :
25. What is an event and what are the models available for event handling?
Changing the state of an object is called an event. An event is an event object that describes a state of change. In other words, event occurs when an action is generated, like pressing a key on keyboard, clicking mouse, etc. There different types of models for handling events are event-inheritance model and event-delegation model
26. What are the advantages of the event-delegation model over the event-inheritance model?
Event-delegation model has two advantages over event-inheritance model.
=> Event delegation model enables event handling by objects other than the ones that generate the events. This allows a clean separation between a component’s design and its use.
=> It performs much better in applications where many events are generated. This performance improvement is due to event-delegation model does not have to be repeatedly process unhandled events as is the case of the event-inheritance.
27. Can a class be it’s own event handler? Explain how to implement this?
Sure.a Class can be its own event handler. For an example could be a class that extends Jbutton and implements ActionListener. In the actionPerformed method, put the code to perform when the button is pressed.
28. Why does JComponent have add() and remove() methods but Component does not?
JComponent have add() and remove() methods but Component does not because JComponent is a subclass of Container, and can contain other components and jcomponents.
29. What is the relationship between clipping and repainting?
When a window is repainted by the AWT painting thread, it sets the clipping regions to the area of the window that requires repainting.
30. What class is at the top of the AWT event hierarchy?
java.awt.AWTEvent is that class which is at the top of the AWT event hierarchy. if they say java.awt.Event, they haven’t deal with swing or AWT in a while.