初步了解Java图形界面开发Swing类

猿友 2021-07-21 17:01:48 浏览数 (3557)
反馈

本篇文章,我将和大家分享一下Java中新一代的图形界面开发工具 Swing 类库的简要概述,基本结构和常用的包,希望对大家的学习有所帮助。下面是详情内容。

Swing类库概述

我们所见的,无论是浏览器,还是软件使用,它们都需要有一个图形界面,这才方便用户进行交互使用。在 Java 中有专门用来开发图形界面的工具,比如AWT、Swing。

Swing作为新一代的图形界面开发工具,用来开发界面比AWT更加优秀。因为Swing是一种轻量级组件,采用的是纯 Java 开发,所以继承了 Java 语言的跨平台性,不再限制于本地平台的图形界面,可以在更多平台上保持同样的运行效果。除此之外,Swing 比 AWT 提供了更多的图形界面组件,可以用来开发出更美观更优秀的图形界面程序。

Swing类库结构

Swing 组件采用的是 MVC 的设计方式,因此实现了 GUI 组件的显示逻辑和数据逻辑分离,也就允许了程序员可以自定义 Render 来改变 GUI 组件的显示外观,从而提供了更多灵活性。

Swing 主要是围绕 JComponent 组件构建的,而 JComponent 是由 AWT 的容器扩展而来的。所以,Swing 的组织结构如下图所示:

5-200ZQ64244445

由图中不难看出,Swing 组件除了 AbstractButton 类之外都是 J 开头的。所以Swing 容器组件除了直接继承了 AWT 类库中的容器组件类,其他大部分组件都是继承 JComponent 组件。

这些组件又可以分成两类,容器组件和非容器组件。容器组件包括了JFmme和JDialog两个组件,非容器组件有JButton、JMenu和JPanel等等。

Swing类库的包

Swing 类库是由许多个包组成的,正是有了这些包中的类互相协作来完成 GUI 设计。

Swing类库包

在这其中,javax.swing 包是 Swing 类库提供的最大的包,其中包含了将近了 100 个类和 25 个接口。可以说,几乎所有的 Swing 组件都在这个包中。

用得比较多的还有 javax.swing.event 包,这个包定义了事件和事件监听器类,是用来响应 Swing 组件触发的事件。

另外说个特别的,Swing 的 表格组件(JTable)虽然在 javax.swing 包中,但是它的支持类却在 javax.swing.table 包中。除了 JTable之外,还有图形绘制类和编辑器等都是在 javax.swing.table 包里面。

总结

以上就是关于 Java 图形界面开发工具 Swing 类库的初步介绍,想要了解更多关于 Java Swing 类库的使用方法以及其他内容,请搜索W3Cschool以往的文章。如果本篇文章对大家的学习有所帮助,还希望大家能够多多地关注和支持!


0 人点赞