JFC Java23 Sept 2025 | 4 min read In 1997, Sun Microsystems and IBM decided to solve the problem of access-enabling software. Their aim was to develop such an accessibility API that application developers could implement on Java class libraries to make applications accessible. As the result, Sun Microsystems wrote the accessibility API and IBM has tested their API and implemented it on their foundation classes. Sun Microsystems integrated JFC/ Swing directly into Java 1.2 and later versions. In this section, we are going to discuss the JFC, its components, services, and the difference between JFC and AWT. What if JFC?JFC stands for Java Foundation Classes. It is a rich and comprehensive set of GUI components and services that simplify the development and deployment of desktop, client-side, and internet applications. It is a superset that contains AWT. JFC extends AWT by adding many components and services that are as follows:
Sun Microsystems added a mechanism to the JFC is called Multiplexed UI. It is an extension to the PLAF (Pluggable Look & Feel). A key feature of the PLAF is that it enables developers to swap the Look and Feel of the UI which can be directly accessible. It was developed for application developers to provide a common interface. The Multiplexed UI mechanism allows the developer to:
The following figure describes the JFC architecture. ![]() In the above figure, we see that Swing sits atop of part, but not all, of the AWT components. Swing sits on a number of the APIs that implement the various parts of AWT, including Java2D, Drag-and-Drop, and the Accessibility API. Advantage of JFC
Accordingly, the exhibition of a GUI made through JFC is unsurprising. Therefore, JFC are widely used in client-side applications. Components of JFCThe JFC components includes all the JavaBeans and swing Components that offer re-usability, interoperability, and portability. Note that Swing is an enhancement of AWT, not a replacement. Difference Between JFC and WFC
Next TopicJava-atomic-vs-volatile-vs-synchronized |
How to Capitalize the First Letter of a String in Java
? In programming, most of the time we have to deal with a string that is an important part of the programming language. Sometimes, we require to convert the whole paragraph into a sentence case. In such a case, the first letter of the string must be...
2 min read
Program to Convert List to Stream in Java
A list is a type of data structure in programming that represents an ordered collection of elements. It allows storing and accessing elements sequentially and supports adding, removing, and retrieving elements. Lists are commonly used for organizing and manipulating data in various programming languages. Streams are a...
2 min read
Alphabet Board Path Problem in Java
We are provided with an alphabet board that consists all the letters of English language from A to Z as shown in the below mentioned diagram. On the above-mentioned alphabet board, we start at the position (0,0) and we can take only the below-mentioned moves: 'U' indicates...
7 min read
Box Stacking Problem
Problem statement You are given three integer arrays of size N, which represent the height, width and length of N boxes, respectively. Your task is to stack the boxes on each other such that the height should be maximum, and you have to return the height. To put one...
6 min read
Java Program to Determine Whether a Given String of Parentheses (Multiple Types) is Properly Nested
Determining if a string of multiple types of parentheses is properly nested involves checking if every opening parenthesis ((, {, [) has a matching and correctly placed closing parenthesis (), }, ]). Proper nesting ensures that parentheses are balanced and correctly ordered. It is essential in...
6 min read
How to Run Java Program in CMD Using Notepad
Running the Java program in in CMD using Notepad involves various steps. In this section, we will learn how to save, compile, and run (execute) a Java program in Command Prompt (CMD) using notepad. Before running (executing) a Java program, ensure that Java is installed in the...
3 min read
Types of Garbage Collector in Java
In Java, garbage collection is a mechanism that provides automatic memory management. It is done by the JVM. It need not to handle object allocation and deallocation by the programmer. In the ious sections, we have also discussed how garbage collection works. If you are not introduced...
5 min read
India Map Pattern in Java
In this section, we will create Java programs that print India map pattern using for loop, while loop, and using obfuscated code. IndiaMapPattern1.java public class IndiaMapPattern1 { public static void main(String args[]) { int a =10, b = 0, c = 10; // The encoded string after removing first 31 characters // Its individual...
4 min read
Lock Framework Vs. Thread Synchronization in Java
Lock Framework In Java, lock framework and thread synchronization mechanisms are used to manage concurrent access to shared resources and ensure thread safety in multithreaded applications. It is a set of classes and interfaces, and it is present in java.util.concurrent package. It provides a flexible and efficient way...
10 min read
Singleton Class in Java
In object-oriented programming, a class is a blueprint or template for creating objects. Each object created from a class has its own set of attributes (data) and methods (functions) that define its behaviour. In some cases, we may only want one instance of a class to...
4 min read
We request you to subscribe our newsletter for upcoming updates.

We provides tutorials and interview questions of all technology like java tutorial, android, java frameworks
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India
