Chuyển tới nội dung
Home » Awt And Swing In Java | Cấu Trúc Phân Cấp Lớp Java Swing

Awt And Swing In Java | Cấu Trúc Phân Cấp Lớp Java Swing

Java GUI: Full Course ☕ (FREE)

Difference Between AWT and Swing in Java

S.No. AWT SWING
1. The full form of AWT is Abstract Window Toolkit. It has no full version.
2. It is an API used to develop window-based applications in Java. Swing is a graphical user interface (GUI) and a part of Oracle’s Java Foundation Classes that are used to design different applications.
3. Its components are heavy weighted. Its components are light weighted.
4. In Java AWT, the components are platform dependent. In Java swing, the components are independent.
5. The functionality of JAVA AWT is less as compared to the Java swing. The functionality of the JAVA swing is higher than AWT.
6. It requires more time for execution. It requires less time for execution.
7. It has less powerful components compared to the Java swing. It has more powerful components than Java AWT.
8. It does not support the MVC pattern. It supports the MVC pattern.

Keep learning and stay tuned to get the latest updates on GATE Exam along with GATE Eligibility Criteria, GATE 2023, GATE Admit Card, GATE Syllabus, GATE Previous Year Question Paper, and more.

Also Explore,

Ưu điểm và nhược điểm của Swing so với AWT

Ưu điểm

  • Swing có nhiều thành phần GUI hơn AWT, như các bảng, thanh trượt, thanh tiến trình, cây, bảng chọn màu, v.v
  • Swing có khả năng tùy biến cao hơn AWT, có thể thay đổi màu sắc, kiểu dáng, kích thước và hình dạng của các thành phần GUI
  • Swing không phụ thuộc vào nền tảng hệ điều hành, nghĩa là các thành phần GUI sẽ nhìn giống nhau trên các hệ điều hành khác nhau
  • Swing có hiệu suất cao hơn AWT, vì nó sử dụng mô hình xử lý sự kiện nhẹ (lightweight) và không cần gọi đến các API gốc của hệ điều hành
  • Swing có thể kết hợp với các công nghệ khác như Java 2D, Java 3D, Java Sound, Java Accessibility, v.v. để tạo ra các ứng dụng đa phương tiện

Nhược điểm

  • Swing khó học và sử dụng hơn AWT, vì nó có nhiều lớp và giao diện trừu tượng
  • Swing cần nhiều bộ nhớ hơn AWT, vì nó có nhiều đối tượng và phương thức
  • Swing có thể gặp vấn đề về tương thích với các phiên bản Java cũ hoặc các trình duyệt web
  • Swing có thể không hiển thị được một số thành phần GUI đặc biệt của hệ điều hành, như menu phải chuột hay thanh công cụ

Nhìn chung, trong phát triển ứng dụng Java hiện nay, Java Swing thường được ưa chuộng hơn do tính năng tùy biến cao và khả năng độc lập với nền tảng. Tuy nhiên, việc sử dụng AWT vẫn có sự tồn tại trong một số dự án truyền thống và phụ thuộc vào nhu cầu riêng của từng dự án cụ thể.

Với những thông tin trên đây, Học java chắc chắn rằng bạn đã có thêm nhiều kiến thức hữu ích về 2 công cụ tuyệt vời này. Nếu bạn muốn biết thêm những thông tin liên quan đến Swing trong Java, tham khảo link sau https://hocjava.com/category/java-swing/

Java Swing là một phần của Java Foundation Classes (JFC) được sử dụng để tạo các ứng dụng window-based. Nó được xây dựng trên API AWT (Abstract Windowing Toolkit) và được viết hoàn toàn bằng Java.

Không giống như AWT, Java Swing cung cấp các thành phần không phụ thuộc vào nền tảng và nhẹ hơn.

Gói javax.swing cung cấp các lớp cho java swing API như JButton, JTextField, JTextArea, JRadioButton, JCheckbox, JMenu, JColorChooser, v.v.

Nội dung chính

Java GUI: Full Course ☕ (FREE)
Java GUI: Full Course ☕ (FREE)

AWT và Java Swing là gì?

AWT: Sự khởi đầu của GUI trong Java

Java AWT (Abstract Window Toolkit) là một trong những thư viện cốt lõi trong Java để tạo giao diện đồ họa người dùng (GUI) trong các ứng dụng máy tính để bàn. Nó cung cấp các lớp và phương thức cho phép nhà phát triển tạo cửa sổ, hộp thoại, nút, menu và các thành phần GUI khác. AWT được giới thiệu từ phiên bản đầu tiên và là bộ công cụ GUI đầu tiên dành cho Java. Dưới đây là một số điểm quan trọng về Java AWT:

  • Phụ Thuộc Vào Nền Tảng: Thư viện AWT phụ thuộc vào nền tảng, vì vậy giao diện có thể trông khác nhau trên các hệ điều hành.
  • Tùy Biến Hạn Chế: AWT cung cấp ít tính năng tùy chỉnh hơn so với Swing, giới hạn trong việc xây dựng giao diện đa dạng.
  • Khối Lượng Lớn: Thư viện AWT có nhiều lớp và phương thức, đôi khi làm cho quá trình học và phát triển phức tạp hơn.
  • Phổ Biến Cổ Điển: Mặc dù AWT đã được sử dụng từ lâu trong phát triển Java, nó không còn phổ biến trong việc phát triển ứng dụng Java hiện đại.

Java Swing: Sự đa dạng và linh dạng

Java Swing là một thư viện GUI mạnh mẽ và linh hoạt được xây dựng trên nền tảng Java Foundation Classes (JFC). Điều này cho phép Swing độc lập với nền tảng, có khả năng tùy biến cao để xây dựng các GUI tương tác và hấp dẫn về mặt hình ảnh và giúp tạo ra giao diện người dùng đa nền tảng. Dưới đây là một số điểm cần biết về Java Swing:

  • Khả năng Tùy Biến Cao: Swing cung cấp nhiều thành phần GUI như bảng, thanh trượt, thanh tiến trình, cây, bảng chọn màu, v.v. Điều này giúp bạn xây dựng giao diện phức tạp và đa dạng.
  • Độc Lập Nền Tảng: Swing không phụ thuộc vào nền tảng hệ điều hành, vì vậy các ứng dụng Swing sẽ nhìn giống nhau trên các hệ điều hành khác nhau.
  • Hiệu Suất Cao: Sử dụng mô hình xử lý sự kiện nhẹ (lightweight) giúp Swing có hiệu suất cao hơn và không cần gọi đến API gốc của hệ điều hành.
  • Kết Hợp Với Công Nghệ Khác: Swing có khả năng tích hợp với các công nghệ khác như Java 2D, Java 3D, Java Sound, Java Accessibility, v.v. Điều này cho phép bạn xây dựng các ứng dụng đa phương tiện và đa dạng.

Cấu trúc phân cấp lớp Java Swing

Phân cấp của API Java swing như liệt kê ở hình dưới đây:

Phân cấp API Java swing

Chú thích: Tất cả các thành phần trong swing được kế thừa từ lớp Jcomponent như JButton, JComboBox, JList, JLabel đều có thể được thêm vào lớp Container.

Container là các window như Frame và Dialog. Các container này chỉ có thể thêm một thành phần vào chính nó.

Java Swing For Beginners | What is Java Swing | Java Swing Tutorial | Intellipaat
Java Swing For Beginners | What is Java Swing | Java Swing Tutorial | Intellipaat

‘Coding has over 700 languages’, ‘67% of programming jobs aren’t in the
technology industry’, ‘Coding is behind almost everything that is powered
by electricity’, ‘Knowing how to code is a major requirement for
astronomers’, ‘The first computer didn’t use any electricity’, ‘Do you
know there is a coding language named “Go“’, ‘Computer programming is one
of the fastest-growing careers’, ‘Fortran (FORmula TRANslation) was the
name of the first programming language’, ‘The first programmer was the
daughter of a mad poet’, ‘Many programming languages share the same
structure’, ‘Coding will soon be as important as reading’, ‘How many
programmers does it take to change a light bulb? None, that’s a hardware
problem’, ‘Why do Java developers wear glasses? Because they can’t C’,
‘Software and temples are much the same — first we build them, then we
pray’, ‘An engineer will not call it a bug — it’s an undocumented
feature’, ‘In a room full of top software designers, if two agree on the
same thing, that’s a majority’, ‘C programmers never die. They are just
cast into void’, ‘Knock, knock … Who’s there? … *very long pause* … Java’,
‘The best thing about a boolean is even if you are wrong, you are only off
by a bit’, ‘Linux is only free if your time has no value’, ‘The computer
was born to solve problems that did not exist before’, ‘Coding has over
700 languages’, ‘67% of programming jobs aren’t in the technology
industry’, ‘Coding is behind almost everything that is powered by
electricity’, ‘Knowing how to code is a major requirement for
astronomers’, ‘The first computer didn’t use any electricity’, ‘Do you
know there is a coding language named “Go“’, ‘Computer programming is one
of the fastest-growing careers’, ‘Fortran (FORmula TRANslation) was the
name of the first programming language’, ‘The first programmer was the
daughter of a mad poet’, ‘Many programming languages share the same
structure’, ‘Coding will soon be as important as reading’, ‘How many
programmers does it take to change a light bulb? None, that’s a hardware
problem’, ‘Why do Java developers wear glasses? Because they can’t C’,
‘Software and temples are much the same — first we build them, then we
pray’, ‘An engineer will not call it a bug — it’s an undocumented
feature’, ‘In a room full of top software designers, if two agree on the
same thing, that’s a majority’, ‘C programmers never die. They are just
cast into void’, ‘Knock, knock … Who’s there? … *very long pause* … Java’,
‘The best thing about a boolean is even if you are wrong, you are only off
by a bit’, ‘Linux is only free if your time has no value’, ‘The computer
was born to solve problems that did not exist before’,

Difference between AWT and Swing in Java

Java is one of the most in-demand programming languages for developing a variety of applications. The popularity of Java can be attributed to its versatility as it can be used to design customized applications that are light and fast and serve a variety of purposes ranging from web services to android applications. Java is fast, reliable, and secure. There are multiple ways to develop GUI-based applications in java, out of which the most popular ones are AWT and Swing.

Before getting into the differences, let us first understand what each of them is.

1. AWT AWT stands for Abstract Window Toolkit. It is a platform-dependent API to develop GUI (Graphical User Interface) or window-based applications in Java. It was developed by heavily Sun Microsystems In 1995. It is heavy-weight in use because it is generated by the system’s host operating system. It contains a large number of classes and methods, which are used for creating and managing GUI. 2. Swing: Swing is a lightweight Java graphical user interface (GUI) that is used to create various applications. Swing has platform-independent components. It enables the user to create buttons and scroll bars. Swing includes packages for creating desktop applications in Java. Swing components are written in Java language. It is a part of Java Foundation Classes(JFC). Difference between AWT and Swing:

S.NO

AWT

Swing

1. Java AWT is an API to develop GUI applications in Java Swing is a part of Java Foundation Classes and is used to create various applications.
2. The components of Java AWT are heavy weighted. The components of Java Swing are light weighted.
3. Java AWT has comparatively less functionality as compared to Swing. Java Swing has more functionality as compared to AWT.
4. The execution time of AWT is more than Swing. The execution time of Swing is less than AWT.
5. The components of Java AWT are platform dependent. The components of Java Swing are platform independent.
6. MVC pattern is not supported by AWT. MVC pattern is supported by Swing.
7. AWT provides comparatively less powerful components. Swing provides more powerful components.
AWT components require java.awt package Swing components requires javax.swing package
AWT is a thin layer of code on top of the operating system. Swing is much larger swing also has very much richer functionality.
10 AWT stands for Abstract windows toolkit . Swing is also called as JFC(java Foundation classes). It is part of oracle’s JFC.
11 Using AWT , you have to implement a lot of things yourself . Swing has them built in.

Feeling lost in the vast world of Backend Development? It’s time for a change! Join our Java Backend Development – Live Course and embark on an exciting journey to master backend development efficiently and on schedule. What We Offer:

  • Comprehensive Course
  • Expert Guidance for Efficient Learning
  • Hands-on Experience with Real-world Projects
  • Proven Track Record with 100,000+ Successful Geeks

Last Updated :
11 Dec, 2022

Like Article

Save Article

Share your thoughts in the comments

Please Login to comment…

AWT and Swing in Java

AWT and Swing are used to develop window-based applications in Java. Awt is an abstract window toolkit that provides various component classes like Label, Button, TextField, etc., to show window components on the screen. All these classes are part of the Java.awt package.

On the other hand, Swing is the part of JFC (Java Foundation Classes) built on the top of AWT and written entirely in Java. The javax.swing API provides all the component classes like JButton, JTextField, JCheckbox, JMenu, etc.

The components of Swing are platform-independent, i.e., swing doesn’t depend on the operating system to show the components. Also, the Swing’s components are lightweight. The main differences between AWT and Swing are given in the following table.

Context AWT Swing
API Package The AWT Component classes are provided by the java.awt package. The Swing component classes are provided by the javax.swing package.
Operating System The Components used in AWT are mainly dependent on the operating system. The Components used in Swing are not dependent on the operating system. It is completely scripted in Java.
Weightiness The AWT is heavyweight since it uses the resources of the operating system. The Swing is mostly lightweight since it doesn’t need any Operating system object for processing. The Swing Components are built on the top of AWT.
Appearance The Appearance of AWT Components is mainly not configurable. It generally depends on the operating system’s look and feels. The Swing Components are configurable and mainly support pluggable look and feel.
Number of Components The Java AWT provides a smaller number of components in comparison to Swing. Java Swing provides a greater number of components than AWT, such as list, scroll panes, tables, color choosers, etc.
Full-Form Java AWT stands for Abstract Window Toolkit. Java Swing is mainly referred to as Java Foundation Classes (JFC).
Peers Java AWT has 21 peers. There is one peer for each control and one peer for the dialogue. Peers are provided by the operating system in the form of widgets themselves. Java Swing has only one peer in the form of OS’s window object, which provides the drawing surface used to draw the Swing’s widgets (label, button, entry fields, etc.) developed directly by Java Swing Package.
Functionality and Implementation Java AWT many features that are completely developed by the developer. It serves as a thin layer of development on the top of the OS. Swing components provide the higher-level inbuilt functions for the developer that facilitates the coder to write less code.
Memory Java AWT needs a higher amount of memory for the execution. Java Swing needs less memory space as compared to Java AWT.
Speed Java AWT is slower than swing in terms of performance. Java Swing is faster than the AWT.

Java Swing Hierarchy

Java defines the class hierarchy for all the Swing Components, which is shown in the following image.

Java Swing Example

In the following example, we have created a User form by using the swing component classes provided by the javax.swing package. Consider the example.

Output:

Java awt Example

To understand the differences between Awt and Swing, we have created the same example in awt as well. Consider the following example.

Output:

Overview

Test Series

Java, a stalwart in the realm of programming languages, is extensively used for creating versatile applications. AWT and Swing, two significant terminologies in Java, play a pivotal role in developing window-based applications. Let’s delve into the primary distinctions between AWT and Swing in Java.

Get 6 Months SuperCoaching @ just

₹2499₹1599

AWT, an acronym for “Abstract Window Toolkit”, is an API designed to facilitate the development of window-based applications in Java. It comprises a plethora of elements such as classes, methods, labels, text fields, buttons, etc., that are instrumental in designing and managing GUI.

Swing, a part of Oracle’s Java Foundation Classes, is a graphical user interface (GUI) used to design various applications. Developed with an aim to provide an advanced set of GUI components, Swing encompasses components like JTextField, JCheckbox, JMenu, etc.

S.No. AWT SWING
1. AWT stands for Abstract Window Toolkit. Swing doesn’t have a full form.
2. AWT is an API used for developing window-based applications in Java. Swing is a GUI and a part of Oracle’s Java Foundation Classes, used for application design.
3. AWT components are heavy-weighted. Swing components are light-weighted.
4. AWT components are platform-dependent. Swing components are platform-independent.
5. AWT has less functionality compared to Swing. Swing has more functionality than AWT.
6. AWT requires more execution time. Swing requires less execution time.
7. AWT has less powerful components compared to Swing. Swing boasts more powerful components than AWT.
8. AWT does not support the MVC pattern. Swing supports the MVC pattern.

Continue your learning journey and stay updated with the latest information on GATE Exam , including GATE Eligibility Criteria , GATE 2023 , GATE Admit Card , GATE Syllabus , GATE Previous Year Question Paper , and more.

Further Reading,

Sign Up Now &

Difference between AWT and Swing in Java

Java is one of the most in-demand programming languages for developing a variety of applications. The popularity of Java can be attributed to its versatility as it can be used to design customized applications that are light and fast and serve a variety of purposes ranging from web services to android applications. Java is fast, reliable, and secure. There are multiple ways to develop GUI-based applications in java, out of which the most popular ones are AWT and Swing.

Before getting into the differences, let us first understand what each of them is.

1. AWT AWT stands for Abstract Window Toolkit. It is a platform-dependent API to develop GUI (Graphical User Interface) or window-based applications in Java. It was developed by heavily Sun Microsystems In 1995. It is heavy-weight in use because it is generated by the system’s host operating system. It contains a large number of classes and methods, which are used for creating and managing GUI. 2. Swing: Swing is a lightweight Java graphical user interface (GUI) that is used to create various applications. Swing has platform-independent components. It enables the user to create buttons and scroll bars. Swing includes packages for creating desktop applications in Java. Swing components are written in Java language. It is a part of Java Foundation Classes(JFC). Difference between AWT and Swing:

S.NO

AWT

Swing

1. Java AWT is an API to develop GUI applications in Java Swing is a part of Java Foundation Classes and is used to create various applications.
2. The components of Java AWT are heavy weighted. The components of Java Swing are light weighted.
3. Java AWT has comparatively less functionality as compared to Swing. Java Swing has more functionality as compared to AWT.
4. The execution time of AWT is more than Swing. The execution time of Swing is less than AWT.
5. The components of Java AWT are platform dependent. The components of Java Swing are platform independent.
6. MVC pattern is not supported by AWT. MVC pattern is supported by Swing.
7. AWT provides comparatively less powerful components. Swing provides more powerful components.
AWT components require java.awt package Swing components requires javax.swing package
AWT is a thin layer of code on top of the operating system. Swing is much larger swing also has very much richer functionality.
10 AWT stands for Abstract windows toolkit . Swing is also called as JFC(java Foundation classes). It is part of oracle’s JFC.
11 Using AWT , you have to implement a lot of things yourself . Swing has them built in.

Feeling lost in the vast world of Backend Development? It’s time for a change! Join our Java Backend Development – Live Course and embark on an exciting journey to master backend development efficiently and on schedule. What We Offer:

  • Comprehensive Course
  • Expert Guidance for Efficient Learning
  • Hands-on Experience with Real-world Projects
  • Proven Track Record with 100,000+ Successful Geeks

Last Updated :
11 Dec, 2022

Like Article

Save Article

Share your thoughts in the comments

Please Login to comment…

AWT vs Swing vs JavaFX

Introduction

I was teaching a one-on-one Java web services course a few weeks ago. During introductions, the delegate told me that he needed to maintain a very large Swing-based application, and didn’t know where to start. So by mutual agreement, we strayed off from the original course topics for a few days to cover AWT and Swing.

So what is the difference between AWT, Swing and JavaFX, and how would you decide which of these APIs to use?

If you want to write rich client graphical user interfaces (GUIs), you’ll need to use a GUI toolkit. You’ll probably have to decide between the standard JSE toolkits — AWT, Swing and JavaFX. There are other third party libraries as well.

Commonly used GUI libraries include:

AWT is the first generation Java GUI toolkit, Java Swing is the second generation, and the JavaFX is the third generation. These are all mature, well-supported, standard Java GUI technologies.

You can use whichever GUI toolkit you like. One important factor to consider is finding staff who know the technologies. It will be easier to find a programmer who knows one of the standard JSE toolkits, as opposed to a third-party library like SWT or JGoodies.

AWT (Abstract Windowing Toolkit)

AWT has been around since Java 1.0, and is the original platform-dependent GUI widget toolkit. AWT was written as a Java wrapper library around native operating system GUI widgets. This wrapper code is referred to as native peer code.

The AWT components are generally thought of as “heavyweight” components. The native peer code displays the GUI widgets as operating system specific widgets. The look and feel of the GUI components is determined by the operating system. When running on Microsoft Windows, a button will look like a Windows button. When running on a Mac, the button will look like a Mac button.

This leads to portability issues. Some components have platform specific limitations. Others may not function at all depending on the OS platform.

The AWT toolkit includes GUI components, layout managers for sizing and positioning these components on the screen, and classes for handling events from those components. AWT also provides support for fonts, colours, images, data transfer, drag-and-drop, and 2D and 3D geometry.

Older GUI applications have mainly been written using AWT. However, AWT is outdated, so should definitely be avoided for new application development.

Wikipedia has a nice introductory page on AWT.

Oracle has a guide page with references to everything you’d ever want to know about AWT.

Swing

Swing was the next generation GUI toolkit after AWT. It was introduced in Java Standard Edition J2SE 1.2. Swing provides a richer set of GUI components than AWT. In addition to the familiar widgets like buttons, check boxes and labels, Swing provides more advanced components such as tabbed panels, scroll panes, trees, tables, and lists.

Swing has graphical components that aren’t limited by the native peers that AWT uses. Swing components are regarded as “lightweight” because they don’t need native resources of the operating system’s windowing toolkit. The Swing GUI elements are written in Java with no native code. Instead of wrapping native GUI components, Swing draws its components using Java 2D APIs which in turn call low-level operating system drawing functions.

Because of the pure Java design, Swing has fewer platform specific limitations and is more portable than AWT. The majority of existing Java GUI applications are based on Swing.

Swing allows you to emulate the look-and-feel of a number of operating systems. You can also use a pluggable look-and-feel giving the application a look-and-feel unrelated to the underlying OS.

Because Swing delegates the rendering of widgets to the Java 2D API, it is sometimes thought to be slower than native widget toolkits like the Standard Widget Toolkit (SWT). When the performance of Swing and SWT applications are compared, there is no consistent winner. The results of benchmarks depend on the environments. In some environments (e.g., Windows), SWT outperforms Swing. In others (Linux, VMware hosting Windows), Swing outperforms SWT.

Wikipedia has a nice introductory page on Swing.

JavaFX

JavaFX was intended to replace Swing as the standard GUI library for Java SE. The majority of new Java GUI applications are based on JavaFX.

JavaFX has a number of advantages over Swing. It is more lightweight, and has more sophisticated design controls. It uses CSS styling for components, and XML can be used to develop the GUI layout (with FXML and Scene Builder).

Swing can only be used to create rich client desktop applications. JavaFX can be used to create the same rich desktop applications, as well as rich web applications that can run across a wide variety of devices.

JavaFX is both an alternative to web-based development and an alternative to other toolkits for building GUI desktop/mobile applications.

From Java 11, JavaFX is a standalone component that must be downloaded separately. JavaFX is part of the open-source OpenJDK, under the OpenJFX project. JavaFX supports Linux, Windows, MacOS, Android, iOS, and embedded Raspberry Pi. Swing supports only the first three platforms.

Wikipedia has a fairly technical page on JavaFX.

JavaFXPorts

JavaFXPorts is the open source project that brings Java and JavaFX to mobile and embedded hardware. This includes iPhone, iPad, Android devices, and the Raspberry Pi. Gluon provides free IDE plug-ins and JavaFXPorts builds, as well as commercial support.

Swing and JavaFX are interoperable. JavaFX components can be used to enhance Swing applications, though you’d probably be better off by choosing either one or the other.

SWT (Standard Widget Toolkit)

There are other third-party libraries that you can be use to develop rich client GUI applications in Java. One of the best known APIs is SWT, maintained by the Eclipse Foundation. Unsurprisingly, the best known SWT-based application is Eclipse.

SWT is a cross-platform GUI library for JVM-based desktop applications. SWT is written as a lightweight Java wrapper around heavyweight native code objects. Because of this, SWT widgets are also regarded as heavyweight components. If a native platform GUI library doesn’t provide the required SWT functionality, SWT implements its own Java code, similar to Swing. SWT exposes programmers to more low-level native GUI code than Swing.

SWT is a compromise between the low-level performance and look-and-feel of AWT and the high-level ease of use of Swing.

As usual, Wikipedia has a good page on SWT.

Summary

In summary, you’ll probably only use AWT and Swing when maintaining existing and legacy applications. For all new rich client applications, you’ll be well advised to use JavaFX.

As far as using third-party libraries is concerned, finding a suitably skilled developer for your team can be problematic.

For more on choosing between various user interface options when developing a Java application, see my earlier blog post.

Was this post useful? Please share your comments on the blog post, and as always, stay safe and keep learning!

What is the difference between applets and SWING?

  • I do not know what you are asking, but it sounds like you might want to look into the JApplet class java.sun.com/j2se/1.4.2/docs/api/javax/swing/JApplet.html Dec 17, 2009 at 4:15
  • 2What is the difference between a tree and a dish-washing machine?– BombeDec 17, 2009 at 8:46
  • @Bombe now that’s not very nice..– PacerierApr 1, 2012 at 22:58

Các phương thức được sử dụng phổ biến của Component Class

Có một số phương thức trong lớp Component được sử dụng khá phổ biến, đó là:

Phương thức Mục đích
public void add(Component c) Bổ sung một thành phần trên một phần khác
public void setSize(int width,int height) Để cài đặt và tùy chỉnh kích cỡ của thành phần (chiều rộng, chiều cao)
public void setLayout(LayoutManager m) Để cài đặt Layout Manager cho thành phần
public void setVisible(boolean b) Để cài đặt tính nhìn thấy được (visible) của thành phần. Theo mặc định là false.
A.I tạo video tốt nhất thế giới hiện nay, chuẩn như đời thực: Sora của OpenAI
A.I tạo video tốt nhất thế giới hiện nay, chuẩn như đời thực: Sora của OpenAI

Các phương thức thường dùng của lớp Component

Các phương thức của lớp Component được sử dụng rộng rãi trong java swing được đưa ra dưới đây.

Phương thức Mô tả
public void add(Component c) thêm một thành phần vào thành phần khác.
public void setSize(int width, int height) thiết lập kích thước của thành phần.
public void setLayout(LayoutManager m) thiết lập trình quản lý bố cục (layout) cho thành phần.
public void setVisible(boolean b) thiết lập khả năng hiển thị của thành phần. Nó theo mặc định là false (ẩn)

Kết luận:

Trong bài viết trên, chúng ta đã thảo luận về Java Swing là gì, hệ thống phân cấp các lớp Swing Java.

Với tất cả các thành phần đi kèm với Swing trong Java, việc xây dựng các ứng dụng GUI được tối ưu hóa trở nên dễ dàng hơn.

Hy vọng thông qua bài viết này các bạn đã hiểu về Swing và biết cách ứng dụng nó khi sử dụng ngôn ngữ lập trình Java.

Và nếu bạn muốn tìm hiểu rõ hơn ngôn ngữ này, có thể tham gia ngay khóa học lập trình Java của Ironhack Việt Nam

Chúc các bạn thành công.

Overview

Test Series

Java, a stalwart in the realm of programming languages, is extensively used for creating versatile applications. AWT and Swing, two significant terminologies in Java, play a pivotal role in developing window-based applications. Let’s delve into the primary distinctions between AWT and Swing in Java.

Get 6 Months SuperCoaching @ just

₹2499₹1599

AWT, an acronym for “Abstract Window Toolkit”, is an API designed to facilitate the development of window-based applications in Java. It comprises a plethora of elements such as classes, methods, labels, text fields, buttons, etc., that are instrumental in designing and managing GUI.

Swing, a part of Oracle’s Java Foundation Classes, is a graphical user interface (GUI) used to design various applications. Developed with an aim to provide an advanced set of GUI components, Swing encompasses components like JTextField, JCheckbox, JMenu, etc.

S.No. AWT SWING
1. AWT stands for Abstract Window Toolkit. Swing doesn’t have a full form.
2. AWT is an API used for developing window-based applications in Java. Swing is a GUI and a part of Oracle’s Java Foundation Classes, used for application design.
3. AWT components are heavy-weighted. Swing components are light-weighted.
4. AWT components are platform-dependent. Swing components are platform-independent.
5. AWT has less functionality compared to Swing. Swing has more functionality than AWT.
6. AWT requires more execution time. Swing requires less execution time.
7. AWT has less powerful components compared to Swing. Swing boasts more powerful components than AWT.
8. AWT does not support the MVC pattern. Swing supports the MVC pattern.

Continue your learning journey and stay updated with the latest information on GATE Exam , including GATE Eligibility Criteria , GATE 2023 , GATE Admit Card , GATE Syllabus , GATE Previous Year Question Paper , and more.

Further Reading,

Sign Up Now &

Create your First Java Frame using Visual Studio Code | Create Java GUI Forms using VS Code
Create your First Java Frame using Visual Studio Code | Create Java GUI Forms using VS Code

Sự khác nhau giữa AWT và Swing

Có rất nhiều sự khác biệt giữa java awt và swing được đưa ra dưới đây.

No. Java AWT Java Swing
1) Các thành phần AWT là phụ thuộc nền tảng. Các thành phần Java swing là độc lập nền tảng.
2) Các thành phần AWT là nặng. Các thành phần Swing là nhẹ.
3) AWT không hỗ trợ plugin. Swing có hỗ trợ plugin.
4) AWT cung cấp ít thành phần hơn Swing. Swing cung cấp nhiều thành phần mạnh mẽ hơn AWT như tables, lists, scrollpanes, colorchooser, tabbedpane, vv.
5) AWT không tuân theo MVC(Model View Controller) trong đó model biểu diễn data, view biểu diễn hiển thị và controller biểu diễn các action để kết nối model với view. Swing tuân theo mô hình MVC.

Ứng dụng của Java Swing

Java Swing được dùng để hỗ trợ tạo giao diện đồ hoạ người dùng (với Java).

Bộ công cụ này cung cấp các bộ điều khiển nâng cao như thanh trượt, colorpicker, Tree, TabbedPane và bảng điều khiển,..

Swing có những đặc điểm:

  • Độc lập với thiết bị
  • Có thể tuỳ chỉnh, mở rộng
  • Khá nhẹ
  • Có thể cấu hình

Ngoài ra bạn cũng có thể tùy chỉnh các điều khiển xoay một cách dễ dàng mà không ảnh hưởng đến các thành phần khác.

LOGIN Form with MYSQL Database JDBC | JAVA SWING GUI
LOGIN Form with MYSQL Database JDBC | JAVA SWING GUI

7 Answers

See Applets

An applet is a program written in the Java programming language that can be included in an HTML page, much in the same way an image is included in a page. When you use a Java technology-enabled browser to view a page that contains an applet, the applet’s code is transferred to your system and executed by the browser’s Java Virtual Machine (JVM).

See Swing (Java)

Swing is a widget toolkit for Java. It is part of Sun Microsystems’ Java Foundation Classes (JFC) — an API for providing a graphical user interface (GUI) for Java programs.

Swing was developed to provide a more sophisticated set of GUI components than the earlier Abstract Window Toolkit. Swing provides a native look and feel that emulates the look and feel of several platforms, and also supports a pluggable look and feel that allows applications to have a look and feel unrelated to the underlying platform.

  • 2Note that you can create an applet with Swing by extending the JApplet class. Dec 17, 2009 at 15:39

An applet is a small program that often runs in a web browser Java plugin.

A swing is a piece of playground equipment usually consisting of a seat suspended by two chains or ropes. It’s quite fun. 🙂

In all seriousness, though, Swing is a Java GUI library. It provides components such as buttons and text fields. You can use Swing components in an applet.

  • In terms of security, is there any benefit to having an application as a desktop Swing application over a web applet? Jul 16, 2016 at 8:17

Applets will be downloaded at the client web browser and executed locally where as swing has a set of APIs for developing GUI components and can act as stand alone applications.

Short answer:

Applets

are intended to be small bits of functionality run in a web browser and downloaded on-demand.

Swing

is a collection of user interface components, like text boxes and windows, that are meant to be assembled by a developer for use on the desktop.

Long answer: See adamantium’s answer.

I think the confusion is with all the terminology you initially encounter when building applets.


Applet

is the overall name for a programme that runs in a Java sandbox in a web browser. It is also a specific Java class (java.applet.Applet). The entry class of this programme must extend Applet.

Applets originally (upto Java version 1.1) could only use AWT user interface components.

Since Java version 1.3 Swing components may be used instead. In this case your entry class must extend JApplet.

Swing :- Swing is light weight component . Swing have it’s own layout like most popular box layout. Swing have some thread rules.

Applet :-

Applet is heavy weight component. Applet uses AWT layout like flowlayout. Applet doesn’t have any rules.

  1. Swing is light weight Component.

    Applet is heavy weight Component.

  2. Swing have look and feel according to user view you can change look and feel using UIManager.

    Applet Does not provide this facility.

  3. Swing uses for stand lone Applications, Swing have main method to execute the program.

    Applet need HTML code for Run the Applet.

  4. Swing uses MVC Model view Controller.

    Applet not.

  5. Swing have its own Layout like most popular Box Layout. Applet uses AWT Layouts like flowlayout.

  6. Swing have some Thread rules.

    Applet doesn’t have any rule.

  7. Swing:-To execute Swing no need any browser By which we can create stand alone application But Here we have to add container and maintain all action control with in frame container.

Applet: to execute Applet program we should need any browser like AppletViewer, a web browser. Because Applet is using browser container to run and all action control with in browser container.

Java Swing Tutorial

Java Swing tutorial is a part of Java Foundation Classes (JFC) that is used to create window-based applications. It is built on the top of AWT (Abstract Windowing Toolkit) API and entirely written in java.

Unlike AWT, Java Swing provides platform-independent and lightweight components.

The javax.swing package provides classes for java swing API such as JButton, JTextField, JTextArea, JRadioButton, JCheckbox, JMenu, JColorChooser etc.

Difference between AWT and Swing

There are many differences between java awt and swing that are given below.

What is JFC

The Java Foundation Classes (JFC) are a set of GUI components which simplify the development of desktop applications.

Hierarchy of Java Swing classes

The hierarchy of java swing API is given below.

Commonly used Methods of Component class

The methods of Component class are widely used in java swing that are given below.

Java Swing Examples

There are two ways to create a frame:

We can write the code of swing inside the main(), constructor or any other method.

Simple Java Swing Example

Let’s see a simple swing example where we are creating one button and adding it on the JFrame object inside the main() method.

File: FirstSwingExample.java

Example of Swing by Association inside constructor

We can also write all the codes of creating JFrame, JButton and method call inside the java constructor.

File: Simple.java

The setBounds(int xaxis, int yaxis, int width, int height)is used in the above example that sets the position of the button.

Simple example of Swing by inheritance

We can also inherit the JFrame class, so there is no need to create the instance of JFrame class explicitly.

File: Simple2.java

Next TopicJava JButton Class

NỘI DUNG BÀI VIẾT

Swing và AWT là hai thư viện quan trọng trong việc phát triển giao diện đồ họa người dùng (GUI) trong ứng dụng Java để tạo ra các ứng dụng đa nền tảng với giao diện đẹp và tương tác. Swing là một bộ mở rộng của AWT, được phát triển sau và có nhiều tính năng hơn.

Java Swing, với tính năng độc lập nền tảng và khả năng tùy biến cao, đã trở thành một lựa chọn phổ biến trong việc phát triển ứng dụng GUI. Trong khi đó, AWT là thư viện cổ điển ban đầu của Java, cung cấp các thành phần giao diện đơn giản, nhưng có hạn chế trong việc tạo ra giao diện phức tạp và đẹp mắt.

Ví dụ về Java Swing

Có hai cách để tạo khung (Frame):

  • Bằng cách tạo đối tượng của lớp JFrame.
  • Bằng cách kế thừa lớp JFrame.

Chúng ta có thể viết code của Swing bên trong hàm main(), constructor hoặc bất kỳ phương thức nào khác.

Ví dụ Swing Java đơn giản

Chúng ta hãy xem một ví dụ swing đơn giản, nơi chúng ta đang tạo một button và thêm nó vào đối tượng JFrame bên trong phương thức main().

File: FirstSwingExample.java

package vn.viettuts.swing; import javax.swing.JButton; import javax.swing.JFrame; public class FirstSwingExample { public static void main(String[] args) { JFrame f = new JFrame();// tạo thể hiện của JFrame JButton b = new JButton(“click”);// tạo thể hiện của JButton b.setBounds(130, 50, 100, 40);// trục x , y , width, height f.setTitle(“Ví dụ Java Swing”); f.add(b);// thêm button vào JFrame f.setSize(400, 200);// thiết lập kích thước cho của sổ f.setLayout(null);// không sử dụng trình quản lý bố cục f.setVisible(true);// hiển thị cửa sổ } }

Kết quả:

AOE  || Vũ Địu Cung R Shang || VN vs CHINA ngày 15/2/2024
AOE || Vũ Địu Cung R Shang || VN vs CHINA ngày 15/2/2024

Ví dụ Java Swing – kế thừa lớp JFrame

Chúng ta cũng có thể kế thừa lớp JFrame, vì vậy không cần phải tạo thể hiện của lớp JFrame.

package vn.viettuts.swing; import javax.swing.JButton; import javax.swing.JFrame; public class JavaSwingExample3 extends JFrame {// kế thừa lớp JFrame public JavaSwingExample3() { JButton b = new JButton(“click”);// tạo button b.setBounds(130, 50, 100, 40); add(b);// thêm button vào JFrame setSize(400, 200); setLayout(null); setVisible(true); } public static void main(String[] args) { new JavaSwingExample3(); } }

Nội dung

Ngôn ngữ lập trình Java là một ngôn ngữ lập trình có nhu cầu sử dụng ngày càng cao, do đó việc nắm vững tất cả các khái niệm trong lập trình Java trở nên vô cùng quan trọng.

Swing là một trong số những khái niệm quan trọng trong Java.

Nó là một bộ công cụ có trọng lượng nhẹ, hỗ trợ các nhà lập trình tạo giao diện đồ hoạ người dùng.

Trong bài này chúng ta sẽ đi qua cái khái niệm về Java Swing và cách ứng dụng chúng nhé!

Java Swing là gì?

Java Swing là cách gọi rút gọn khi người ta nhắc đến Swing của Java Foundation (JFC). Nó là bộ công cụ GUI mà Sun Microsystems phát triển để xây dựng các ứng dụng tối ưu dùng cho window (bao gồm các thành phần như nút, thanh cuộn,…).

Swing được xây dựng trên AWT API và hoàn toàn được viết bằng Java. Tuy nhiên, nó lại khác với AWT ở chỗ bộ công cụ này thuộc loại nền tảng độc lập, bao gồm các thành phần nhẹ và phức tạp hơn AWT.

Các gói javax.swing bao gồm các lớp cho Java Swing API như JMenu, JButton, JTextField, JRadioButton, JColorChooser,…

Việc xây dựng ứng dụng sẽ trở nên dễ dàng hơn với Java Swing vì chúng ta có các bộ công cụ GUI giúp đỡ công việc.

Swing được chính thức phát hành vào tháng 3/1998. Nó đi kèm với thư viện Swing 1.0 với hơn 250 lớp, 80 giao tiếp.

Hiện nay con số này đã được tăng lên, ở phiên bản Swing 1.4 có 451 lớp và 85 giao tiếp.

Các bản phát hành Java 2 (SDK 1.2 và các phiên bản mới hơn) đều bao gồm Swing trong runtime environment.

JTable in JAVA Swing | ADD Data into JTable
JTable in JAVA Swing | ADD Data into JTable

Hướng dẫn học lập trình Java Swing từ A đến Z

Dưới đây là một số ví dụ đơn giản để tạo GUI bằng Swing trong Java:

JButton Class – Lớp JButton

Nó được dùng để tạo ra một nút (button) có tên.

Việc sử dụng ActionListener sẽ dẫn đến một số hành động khi nút được nhấn.

Nó kế thừa lớp AbstractButton và độc lập với nền tảng.

Ví dụ:

1

10

11

12

import javax.swing.*;

public class example{

public static void main(String args[]) {

JFrame a = new JFrame(“example”);

JButton b = new JButton(“click me”);

b.setBounds(40,90,85,20);

a.add(b);

a.setSize(300,300);

a.setLayout(null);

a.setVisible(true);

Output:

Một nút button có tên

JTextField Class – Lớp JTextField

Nó kế thừa lớp JTextComponent và dùng để cho phép chỉnh sửa dòng đơn

Ví dụ:

1

10

11

12

import javax.swing.*;

public class example{

public static void main(String args[]) {

JFrame a = new JFrame(“example”);

JTextField b = new JTextField(“edureka”);

b.setBounds(50,100,200,30);

a.add(b);

a.setSize(300,300);

a.setLayout(null);

a.setVisible(true);

Output:

JTextField Class

JScrollBar Class – lớp JScrollBar

Dùng để thêm thanh cuộn (cả ngang và dọc)

Ví dụ:

1

10

11

12

13

14

15

import javax.swing.*;

class example{

example(){

JFrame a = new JFrame(“example”);

JScrollBar b = new JScrollBar();

b.setBounds(90,90,40,90);

a.add(b);

a.setSize(300,300);

a.setLayout(null);

a.setVisible(true);

public static void main(String args[]){

new example();

Output:

JScrollBar Class

JPanel Class – Lớp JPanel

Kế thừa lớp JComponent, cung cấp không gian cho một ứng dụng (có thể đính kèm bất kỳ thành phần nào khác).

1

10

11

12

13

14

15

16

17

18

19

20

import java.awt.*;

import javax.swing.*;

public class Example{

Example(){

JFrame a = new JFrame(“example”);

JPanel p = new JPanel();

p.setBounds(40,70,200,200);

JButton b = new JButton(“click me”);

b.setBounds(60,50,80,40);

p.add(b);

a.add(p);

a.setSize(400,400);

a.setLayout(null);

a.setVisible(true);

public static void main(String args[])

new Example();

Output:

Panel Class

JMenu Class – Lớp JMenu

Kế thừa lớp JMenuItem, là một thành phần menu kéo xuống (hiển thị từ thanh menu).

1

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

import javax.swing.*;

class Example{

JMenu menu;

JMenuItem a1,a2;

Example()

JFrame a = new JFrame(“Example”);

menu = new JMenu(“options”);

JMenuBar m1 = new JMenuBar();

a1 = new JMenuItem(“example”);

a2 = new JMenuItem(“example1”);

menu.add(a1);

menu.add(a2);

m1.add(menu);

a.setJMenuBar(m1);

a.setSize(400,400);

a.setLayout(null);

a.setVisible(true);

public static void main(String args[])

new Example();

Output:

Lớp JMenu

JList Class – Lớp JList

Kế thừa lớp JComponent, đối tượng của lớp Jlist đại diện cho danh sách các mục văn bản.

Next

1

10

11

12

13

14

15

16

17

18

19

20

import javax.swing.*;

public class Example

Example(){

JFrame a = new JFrame(“example”);

DefaultListModel

l = new DefaultListModel< >();

l.addElement(“first item”);

l.addElement(“second item”);

JList

b = new JList< >(l);

b.setBounds(100,100,75,75);

a.add(b);

a.setSize(400,400);

a.setVisible(true);

a.setLayout(null);

public static void main(String args[])

new Example();

Output:

Lớp JList

JLabel Class – Lớp JLabel

Được dùng để đặt văn bản trong vùng chứa, lớp JLabel cũng kế thừa lớp JComponent.

1

10

11

12

13

14

import javax.swing.*;

public class Example{

public static void main(String args[])

JFrame a = new JFrame(“example”);

JLabel b1;

b1 = new JLabel(“edureka”);

b1.setBounds(40,40,90,20);

a.add(b1);

a.setSize(400,400);

a.setLayout(null);

a.setVisible(true);

Output:

Lớp JLabel

JComboBox Class- Lớp JComboBox

Kế thừa lớp JComponent, dùng để hiển thị menu lựa chọn bật lên.

1

10

11

12

13

14

15

16

17

18

import javax.swing.*;

public class Example{

JFrame a;

Example(){

a = new JFrame(“example”);

string courses[] = { “core java”,”advance java”, “java servlet”};

JComboBox c = new JComboBox(courses);

c.setBounds(40,40,90,20);

a.add(c);

a.setSize(400,400);

a.setLayout(null);

a.setVisible(true);

public static void main(String args[])

new Example();

Output:

Lớp JComboBox

Layout Manager – Trình quản lý bố cục

Để sắp xếp các thành phần bên trong vùng chứa, chúng ta sử dụng Layout Manager.

Có một số bố cục như sau:

  1. Border layout – Bố cục đường viền
  2. Flow layout – Bố cục luồng
  3. GridBag layout – Bố cục dạng khung
Border Layout

Trình quản lý bố cục mặc định tất cả JFrame là Border Layout.

Nó đặt các thành phần ở tối đa 5 vị trí: trên, dưới, trái, phải và trung tâm.

Trình quản lý bố cục mặc định

Flow Layout

Bố cục này đặt các thành phần lần lượt vào một hàng.

Bố cục mặc định JPanel.

Đây là bố cục mặc định cho mọi JPanel.

GridBag Layout

GridBag Layout đặt các thành phần trong một lưới, nó cho phép các thành phần này trải dài hơn 1 ô.

GridBag Layout

Ví dụ: Dưới đây là một khung chat ở dạng Flow Layout

1

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

import javax.swing.*;

import java.awt.*;

class Example {

public static void main(String args[]) {

JFrame frame = new JFrame(“Chat Frame”);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(400, 400);

JMenuBar ob = new JMenuBar();

JMenu ob1 = new JMenu(“FILE”);

JMenu ob2 = new JMenu(“Help”);

ob.add(ob1);

ob.add(ob2);

JMenuItem m11 = new JMenuItem(“Open”);

JMenuItem m22 = new JMenuItem(“Save as”);

ob1.add(m11);

ob1.add(m22);

JPanel panel = new JPanel(); // the panel is not visible in output

JLabel label = new JLabel(“Enter Text”);

JTextField tf = new JTextField(10); // accepts upto 10 characters

JButton send = new JButton(“Send”);

JButton reset = new JButton(“Reset”);

panel.add(label); // Components Added using Flow Layout

panel.add(label); // Components Added using Flow Layout

panel.add(tf);

panel.add(send);

panel.add(reset);

JTextArea ta = new JTextArea();

frame.getContentPane().add(BorderLayout.SOUTH, panel);

frame.getContentPane().add(BorderLayout.NORTH, tf);

frame.getContentPane().add(BorderLayout.CENTER, ta);

frame.setVisible(true);

Output:

Khung chat ở dạng Flow Layout

Ví dụ Java Swing – tạo đối tượng của lớp JFrame

Chúng ta cũng có thể viết tất cả các mã tạo JFrame, JButton bên trong constructor.

package vn.viettuts.swing; import javax.swing.JButton; import javax.swing.JFrame; public class JavaSwingExample2 { JFrame f; public JavaSwingExample2() { f = new JFrame();// tạo thể hiện của JFrame JButton b = new JButton(“click”);// tạo thể hiện của JButton b.setBounds(130, 50, 100, 40); f.add(b);// thêm button vào JFrame f.setSize(400, 200);// thiết lập kích thước cho của sổ f.setLayout(null);// không sử dụng trình quản lý bố cục f.setVisible(true);// hiển thị cửa sổ } }

Notepad Clone | Java Project | Swing & AWT
Notepad Clone | Java Project | Swing & AWT

Sự khác biệt giữa AWT và Swing

No. Java AWT Java Swing
1) Phụ thuộc nền tảng (Platform Dependent) Độc lập với nền tảng (Platform Independent)
2) Thành phần của AWT nặng Thành phần của Swing khá nhẹ
3) AWT không hỗ trợ pluggable look and feel. Swing hỗ trợ pluggable look and feel.
4) AWT có ít thành phần hơn Swing Swing cung cấp nhiều thành phần và các thành phần cũng mạnh mẽ hơn AWT như: bảng, danh sách, cuộn màn hình, trình chọn màu,..
5) AWT không tuân theo cấu trúc MVC (Model View Controller) Swing theo cấu trúc MVC

Keywords searched by users: awt and swing in java

Awt And Swing In Java - Javatpoint
Awt And Swing In Java – Javatpoint
Swing And Awt In Java | Ppt
Swing And Awt In Java | Ppt
Awt And Swing In Java - Javatpoint
Awt And Swing In Java – Javatpoint
Difference Between Awt And Swing | Compare The Difference Between Similar  Terms
Difference Between Awt And Swing | Compare The Difference Between Similar Terms
Awt Vs Swing Vs Javafx - Youtube
Awt Vs Swing Vs Javafx – Youtube
Difference Between Awt And Swing In Java - Scaler Topics
Difference Between Awt And Swing In Java – Scaler Topics
Introduction To Awt/Swt/Swing/Javafx Gui Programming In Java - Youtube
Introduction To Awt/Swt/Swing/Javafx Gui Programming In Java – Youtube
Difference Between Awt And Swing In Java
Difference Between Awt And Swing In Java
Swing (Java) - Wikipedia
Swing (Java) – Wikipedia
Awt Vs Swing | Learn The Top 11 Most Valuable Comparisons
Awt Vs Swing | Learn The Top 11 Most Valuable Comparisons
Swing Trong Java - Giới Thiệu Java Swing - Viettuts
Swing Trong Java – Giới Thiệu Java Swing – Viettuts
Java Swing: Definition, Classes & Methods - Video & Lesson Transcript |  Study.Com
Java Swing: Definition, Classes & Methods – Video & Lesson Transcript | Study.Com
Difference Between Awt And Swing In Java - Coding Ninjas
Difference Between Awt And Swing In Java – Coding Ninjas
Calculator Program Using Java Awt And Swing
Calculator Program Using Java Awt And Swing
Java Swing Từ A - Z | Vietnamworks Intech
Java Swing Từ A – Z | Vietnamworks Intech
Introduction To Java Swing - Geeksforgeeks
Introduction To Java Swing – Geeksforgeeks

See more here: kientrucannam.vn

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *