干货|Java swing是做什么的?有什么作用?
黑马程序员视频库
播妞微信号:heiniu526
传智播客旗下互联网资讯、学习资源免费分享平台
在早期JDK1.0发布时,Sun公司就为GUI开发提供了一套基础类库,这套类库被称为AWT(Abstract Window Toolkit),即抽象窗口工具包。
AWT的起初设想就是为了统一实现不同操作系统的图像界面,但问题是,不同操作系统图形库的功能可能不一样,在一个平台上存在的功能在另外一个平台上则可能不存在,为此AWT不得不通过牺牲功能来实现平台无关性。
不仅如此,AWT还是一个重量级组件,使用比较麻烦,且设计出的图形界面不够美观功能也非常有限。为此,Sun公司对AWT进行改进,提出了Swing组件,提供了更加丰富的组件和功能,来满足GUI设计的一切需求。
Swing是一种轻量级组件,它由Java语言开发,同时底层以AWT为基础,使跨平台应用程序可以使用任何可插拔的外观风格,并且Swing可以通过简洁的代码、灵活的功能和模块化组件来创建优雅的用户界面。
所以同AWT相比,在实际开发中,更多的是使用Swing进行图形用户界面开发。需要注意的是,Swing并不是AWT的替代品,而是在原有的AWT的基础上进行了补充和改进。
Swing组件为实现图形用户界面提供了很多基础类库,多数位于java.awt、javax.swing包及其子包下,在这些包下提供了实现图形用户界面的主要类。其中在java.awt包及其子包下的一些类属于原有AWT组件的底层实现,而在javax.swing包及其子包下的一些类则属于Swing后期扩展的,这也从侧面反映出Swing组件对AWT组件的依赖性,接下来通过一张图来描述Swing组件的主要类,如图1所示。
图1 Swing组件继承关系
从图1可以看出,Swing组件的所有类都继承自Container类,然后根据GUI开发的功能扩展了2个主要分支:容器分支(包括Window窗口和Panel面板)和组件分支。其中,容器分支就是为了实现图形用户界面窗口容器而设计的,而组件分支则是为了实现向容器中填充数据、元素以及人机交互组件等功能。
在Swing组件类中,常用的顶级容器类包括有JApplet、JFrame和JDialog;常用的组件类中,AbstractButton类及其子类就是用来定义按钮常见行为的工具类,JTextComponent类及其子类就是用来定义文本内容编辑区域的工具类。
END
诸神归位!《姜子牙》定档!超唯美设计背后这群人有多牛?
2020-09-14
重磅!华为鸿蒙OS 2.0 发布,开放源代码!关注已达4.7k
2020-09-11
美女反追程序大佬,却因性别歧视只能女扮男装进公司....
2020-08-29
点击“在看” 为播妞加鸡腿
干货|Java swing是做什么的?有什么作用?相关推荐
- java历史记录怎么写_我想知道像这样的历史记录查询界面,用java swing来做,应该怎么做?...
展开全部 你浏览器是搜狗吧 一: 主体布局是 边界布局, 今天32313133353236313431303231363533e78988e69d8331333363376539昨天前天是1行1列 ...
- java swing中setVisible(true)方法的真正作用
setVisible(true);方法的意思是说数据模型已经构造好了,允许JVM可以根据数据模型执行paint方法开始画图并显示到屏幕上了,并不是显示图形,而是可以运行开始画图了.这个方法和java多 ...
- java Swing 做剪刀石头布游戏
项目起因: 初学java Swing,想做一个小游戏 . 前言: 1. 刚学java Swing,做的一个剪刀石头布的小游戏,还有很多不会的,忘大佬指点. 2. 游戏规则:点击中间三个按钮,按钮代表了 ...
- java swing开发窗体程序开发(一)GUI编程
Java SWing就是java提供的一个类库专门用于开发窗体程序的,相对于C#的winform,java swing的开发要比C#更加麻烦,他不像C#拥有可视化的界面编辑工具 而是需要像QT一样纯代 ...
- java Swing 做一个简单的输入文本框
java Swing做一个简单的文本输入框, 新建一个SwingDemo类: // //java swing做一个简单的文本框 //Created by lee_1310 on 2019.03.29 ...
- java与MySQL做购物系统_java Swing mysql实现简单的购物系统项目源码附带指导视频教程...
大家好,今天给大家演示一下由Java swing实现的一款简单的购物程序,数据库采用的是mysql,该项目非常简单,实现了管理员对商品类型和商品的管理及用户注册登录后浏览商品.加入购物车.购买商品等功 ...
- 【猿码】java swing实现喜羊羊与灰太狼推箱子游戏附带视频开发教程可做为Java毕设大作业
大家好,今天给大家演示一下由Java swing实现的推箱子小游戏的一款项目,其图标用的是喜羊羊与灰太狼,所以又称喜羊羊与灰太狼版的推箱子游戏,该项目运行环境为普通的Java环境,jdk版本不限,下面 ...
- java与MySQL做购物系统_java Swing mysql实现简单的购物系统项目源码附带指导运行视频教程...
<p> <span style="color:#555555;font-family:"font-size:16px;background-color:#FFFF ...
- java swing做输入框,java Swing 文本框的使用
/** * Java Swing 文本框控件 * @author gao */ package com.gao; import java.awt.GridLayout; import javax.sw ...
最新文章
- Sqlserver循环嵌套
- 如何对付“新垃圾邮件”?
- java泛型(一)、泛型的基本介绍和使用
- pythonappend用法_python中append实例用法总结
- 理解node.js(Understanding node.js)
- jeecms v3.x标签教程之[@cms_comment_page]
- 双硬盘 双linux系统同时运行,XP与linux 双硬盘 双启动管理
- Red Giant Trapcode Suite 17 for Mac视频编辑粒子插件
- 安装程序提示本地计算机已存在源,MSI文件安装错误码不再烦
- 使用python Gstreamer编写mp4视频播放器
- 字节跳动 IconPark 免费图标库、阿里巴巴矢量图标库
- 推荐16个超棒的国外免费PSD资源素材网站
- 机器学习练习----神经网络的标准BP算法(误差逆传播算法)
- 1362:家庭问题(family)
- 签证管理系统 签证软件
- centos7 搭建三主三从 redis5.0集群
- VBA小模板:一个普通随机抽奖,需要模拟多轮用VBA怎么做?
- Web测试方法与技术之CSS讲解
- 2022道路运输企业主要负责人考试练习题及在线模拟考试
- 微信小程序微信账号登录
热门文章
- 给新一届数学类“教指委”的一封公开信
- TSearchRec类型
- css 行与行之间有间隙
- Iframe嵌入页面大小边框和调整
- Building window 2008 Cluster using Virtual Box 4.1.18 with ISCSI (NAS4Free)
- 【推荐】javaweb JAVA JSP 快递信息管理系统物流快递网站物流管理系统源码邮件管理网站
- PHP中,使用CURL下载文件
- 使用IE11的F12开发人员工具进行网页前端性能测试
- 给linux文件添加可执行权限
- 微软CEO鲍尔默的一天(组图)