GUI(Graphic User Interface)为程序提供图形界面,它最初的设计目的是构建一个通用的GUI,使其能在所有平台上运行。在Java1.0中基础类AWT(Abstract Windowing Toolkit)并没有达到这个要求,于是在Java2.0之后的版本出现了Swing,它是AWT组件的增强组件,但它并不能完全代替AWT组件,这两种组件需要同时出现在一个图形用户界面中。

小结

awt和swing的区别?

AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。

Swing是一个用于开发Java应用程序用户界面的开发工具包。它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。

从版本上看,awt出现在JDK1.0及以后版本。swing出现在JDK2.0及以后版本。

从功能上看,虽然都是设计GUI的类库,但是swing的功能更加强大。例如,设计一个按钮,这个按钮上显示一幅图片,在awt中就很费事,但是在swing中就很方便。

JavaSWT

SWT概述

SWT是IBM公司开发的UI开发组件,它与AWT/SWING组件类似,但是SWT克服了AWT/SWING中许多问题,所以用SWT编写UI程序无论在美观成都还是响应速度上都远远超越了AWT和SWING.这主要是因为AWT只是单纯模拟本地操作系统窗口组件,而SWT最大化了操作系统的图形构件API,也就是说只要操作系统提供了图形构件,SWT就可以利用JNI调用他们,只有操作系统中不提供的组件SWT才会去模拟实现. 由于使用了JNI,使得它和本地操作系统紧密连接在一起,因此编写的界面和本地系统窗口几乎没有区别.JFace是SWT的一个增强库,它以来SWT并将其扩展,功能强大. 目前企业级的Java开发应用都会用到这个。

调用关系:

JFace→SWT→JNI→本地操作系统窗口组件

安装

下载SWT安装的Jar包(注意操作系统),也可以在eclipse的plugin目录中找到(SWT.jar),然后用WinRAR解压缩得到org.eclipse.swt.win32.win32.x86_3.4.1.v3449c.jar以及5个dll文件,如果已经配置好了JDK,那么将jar文件复制到JDK/jre/lib/ext/中,将dll文件复制到JDK/jre/bin/目录下,就完成了安装。

http://zhidao.baidu.com/question/130025979.html?fr=ala0

JavaFX

JavaFX是一个强大的图形和多媒体处理工具包集合,它允许开发者来设计、创建、测试、调试和部署富客户端程序,并且和Java一样跨平台。

从Java8开始,JDK(Java开发工具包)包括了JavaFX库。 因此,要运行JavaFX应用程序,您只需要在系统中安装Java8或更高版本。

JavaSwing概述的更多相关文章

  1. JavaSwing程序设计(目录)

    一.JavaSwing 概述 JavaSwing 图形界面概述 二.JavaSwing 基本组件 JLabel(标签) JButton(按钮) JTextField(文本框) JPasswordFie ...

  2. 【AR实验室】ARToolKit之概述篇

    0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...

  3. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  4. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  5. .Net 大型分布式基础服务架构横向演变概述

    一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础 ...

  6. [C#] 进阶 - LINQ 标准查询操作概述

    LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...

  7. 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现

    篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...

  8. Java消息队列--JMS概述

    1.什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送 ...

  9. [AlwaysOn Availability Groups]健康模型 Part 1——概述

    健康模型概述 在成功部署AG之后,跟踪和维护健康状况是很重要的. 1.AG健康模型概述 AG的健康模型是基于策略管理(Policy Based Management PBM)的.如果不熟悉这个特性,可 ...

随机推荐

  1. 用word发CSDN blog

    目前大部分的博客作者在用Word写博客这件事情上都会遇到以下3个痛点: 1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.使用Word写 ...

  2. Currying and Uncurrying Js

    //反科里化Function.prototype.uncurrying = function() { var _this = this; return function() { return Func ...

  3. 基于RFID恢复信号场

    学习RFID的核心是什么?难处在哪?:https://www.zhihu.com/question/26799106

  4. 设计模式9---装饰模式(Decorator Pattern)

    装饰模式又名包装(Wrapper)模式.装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案. 装饰模式的结构 装饰模式以对客户透明的方式动态地给一个对象附加上一些责任.换言之,客户端 ...

  5. scala文件流操作,生成sparkpv,uv作业文件

    package com.bjsxt.scalaspark.core.examples.pvAnduv import java.io.Fileimport java.text.SimpleDateFor ...

  6. zookeeper学习及安装

    HBase提示已创建表,但是list查询时,却显示表不存在. https://blog.csdn.net/liu16659/article/details/80216085 http://archiv ...

  7. Window 服务启动出错 14001

    在安装windows服务时,没有异常情况,但是在启动的过程中出现 14001错误. 错误 14001 应用程序无法启动 因为应用程序的并行配置不正确 有关详细信息 请参阅应用程序事件日志 或使用命令行 ...

  8. 1:C#的三种异步的详细介绍及实现

    一.介绍异步的前世今生: 异步编程模型 (APM,Asynchronous Programming Model) 模式(也称 IAsyncResult 模式),在此模式中异步操作需要 Begin 和 ...

  9. C#多线程学习(五) 多线程的自动管理(定时器)

    Timer类:设置一个定时器,定时执行用户指定的函数.               定时器启动后,系统将自动建立一个新的线程,执行用户指定的函数. 初始化一个Timer对象:  Timer timer ...

  10. UML uml建模工具

    UML建模工具 一.UML的概念: 参考百度百科: https://baike.baidu.com/item/%E7%BB%9F%E4%B8%80%E5%BB%BA%E6%A8%A1%E8%AF%AD ...