Java桌面编程(GUI)详细
Java图形界面编程
- java中AWT和Swing的区别与联系
- Swing和JavaFX如何选择
- Swing和JavaFX便捷开发工具
一、AWT和Swing的区别和联系
AWT和Swing的联系
- AWT和Swing都是java中的包。
- awt是抽象组件窗口工具包,是Java最早的用于编写图形应用程序的开发包。
- Swing是为了补充awt的一些功能性的缺失问题而开发的包,以awt为基础的。Swing是对AWT的改良和扩展。
AWT和Swing的区别
- AWT 是基于本地方法的C/C++程序,其运行速度比较快;Swing是基于AWT的Java程序,其运行速度比较慢。
- AWT的控件在不同的平台可能表现不同,而Swing在所有平台表现一致。
总结
由于实现的不同,awt是机遇本地方法的C/C++程序,运行速度比较快,消耗资源少;Swing是基于awt的Java程序,所以运行速度慢。对于嵌入式应用,往往采用AWT;通常在标准的Java应用中,使用Swing牺牲运行速度换取开发效率和功能。
二、Swing和JavaFX如何选择
概述
JavaFX比较新,Oracle2008年才推出的,功能比较强大,并且持续更新。swing是比较老的GUI,做出东西也比较丑。但是大多数老师讲课还是讲awt,和swing,大多数人还不能一下子舍弃。并且Oracle 已经明确说明不在更新swing。 而现在JavaFX直接内建在JRE和JDK里(Java8),不再区分版本,也可以看出Oracle比较重视。
JavaFX与Swing相比的优点
JavaFX与Swing相比的缺点
- Swing资料非常丰富, 而JavaFX资料相对较少。
- 有待补充
三、Swing和JavaFX便捷开发工具
Swing开发推荐工具
- 推荐使用Eclipse开发工具然后安装WindowBuildier插件
- 文章:https://blog.csdn.net/qq_41998273/article/details/87186197
JavaFX开发推荐工具
- 推荐使用IDEA进行开发,IDEA有自带的 SceneBuilder 可以很便捷的进行开发
- 个人推荐单独下载一个 SceneBuilder 软件,比IDEA自带的用起来更加方便快捷;文章:https://blog.csdn.net/qq_41998273/article/details/102397178
- JavaFX开发资料:
UI美化
JFoenix: http://github.com/jfoenixadmin/JFoenix
BootstrapFX: http://github.com/aalmiray/bootstrapfx
视频文档
中文文档:http://www.javafxchina.net/blog/docs/
宝藏网站:https://www.javafxdeveloper.com/home - 我用JavaFX开发的软件:https://blog.csdn.net/qq_41998273/article/details/102815499
Java桌面编程(GUI)详细相关推荐
- fusion 360安装程序的多个实例正在同时运行。_阿里架构师实例讲解——Java多线程编程;详细的不能再详细了...
欢迎关注专栏<Java架构筑基>--专注于Java技术的研究与分享! Java架构筑基zhuanlan.zhihu.com Java架构筑基--专注于Java技术的研究与分享! 后续文章 ...
- 【狂神Java笔记】Java网络编程实战详细笔记整理(附代码)
1.1 概述 计算机网络: 计算机网络是指将地理位置不同 的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递 ...
- Java基础编程-GUI编程
本文全文参考 https://www.bilibili.com/video/BV1DJ411B75F 1.简介 GUI的核心技术:Swing.AWT 缺点:界面不美观.需要JRE环境 为什么学习? 1 ...
- JAVA 网络编程 Socket 详细说明,实现客户端和服务端相互推送消息
客户端代码: package com.lcx.socket;import java.io.BufferedReader; import java.io.BufferedWriter; import j ...
- Java Socket编程如何建立两者关系
转自:http://developer.51cto.com/art/201003/190582.htm Java Socket编程需要大家详细的学习,有关的技术一直在不断的更新.那么要如何才能掌握好有 ...
- Python编程语言学习:在根目录的py文件内调用某叶目录文件内的包/库或者函数(常用在GUI编程)之详细攻略
Python编程语言学习:在根目录的py文件内调用某叶目录文件内的包/库或者函数(常用在GUI编程)之详细攻略 目录
- java事件绑定,Java编程GUI中的事件绑定代码示例
程序绑定的概念: 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来.对java来说,绑定分为静态绑定和动态绑定:或者叫做前期绑定和后期绑定 静态绑定: 在程序执行前方法已经被绑定,此时由编译 ...
- Java 网络编程(超级详细)
前言:本文是初学Java网络编程时所记录的学习笔记,方便以后查阅学习,同时也作为资料总结分享给大家,如果有问题欢迎指出!! 1. 网络编程 1.1 网络编程基本概念 1.网络 将不同区域的电脑连接到一 ...
- Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型、符号、运算符、数组Array总结之详细攻略
Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组Array总结之详细攻略 目录 Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组总 ...
最新文章
- 单片机异常复位后如何保存变量数据
- 日期Date和字符串之间转换
- 一周一论文(翻译 总结)—— [SOSP 18] LITE Kernel RDMA Support for Datacenter Applications : 一个LITE 内核支持的RDMA通信库
- Web API 之SelfHost与OwinSelfHots加载外部程序
- Linux 安装 FFmpeg
- iOS8 【xcode6中添加pch全局引用文件】
- centOS 阿里云yum地址配置
- 基于easyui开发Web版Activiti流程定制器详解(二)——文件列表
- LeetCode 371. 两整数之和(位运算加法)
- 多线程下HttpContext.Current 的问题
- HTMLTestRunner测试报告
- 图像处理-STB图片读写
- 流行趋势-立体感和艺术剪纸风海报美妆设计
- 爱的十个秘密--3.尊重的力量
- 第一章:1.3:了解编译系统如何工作的好处
- python解释器调用_Python3.x那些事儿:[2]如何调用解释器-百度经验
- Sublime + Chrome 本地调试 CSS 选择器
- C语言源代码系列-管理系统之物业费管理
- mysql 提高查询速度_6条策略提高mysql查询速度
- Spring中的事务控制(Transacion Management with Spring)