利用Java技术编写桌面软件基础
2007-05-16 21:47
447 查看
这篇文章面向初学Java技术的开发人员,它描述了开发不同类型的桌面应用软件涉及的技术,以及何时决定使用它们。以后的文章将详细阐述如何使用这些技术,以及如何联合使用它们。首先,我们将开始在这篇文章中学习部分技术。
要使用这篇文章中的任何技术,我们必须在计算机上安装Java平台。
桌面应用软件的类型、外观、功能
在学习大量的Java技术前,我们必须搞清楚谁会使用我们的应用软件、他们如何使用它、它在个人电脑还是在网络上运行,以及应用软件采用什么样的外观或图形用户界面(GUI)?
在开发应用软件前,考虑下面5个方面:
·应用软件的发布
·是否采用GUI
·应用软件的功能
·应用软件的部署
·其它Java技术
应用软件的发布
首先,我们必须确定我们的应用软件是否是分布式软件。分布式应用软件运行在多台计算机上,并通过一个网络通讯。一些分布式应用软件是二个独立的软件:后端服务器软件和前端客户端软件。后端软件运行在Solaris或Linux等共享系统上,管理磁盘、打印机、调制解调器等共享资源。后端软件包含有应用软件主要的处理能力;前端客户端软件运行在工作站或个人电脑上,它是用户在使用应用软件时能够看到的部分。前端客户端软件处理用户界面功能,例如接收键盘的输入、在显示屏上显示输出。
分布式应用软件可以非常简单,只在一台客户端计算机和一台服务器上运行;也可以很复杂,在多台客户端和服务器上运行。非分布式应用软件在本地计算机上运行,无需访问网络。例如,我们可以编写一个只在本地机上运行的简单的计算器软件,我们也可以使这类软件成为分布式软件。
通常,我们开发的应用软件都是分布式软件,在网络或互联网上运行,供许多计算机使用。
要开发分布式应用软件,我们需要学习和使用Java Remote Method Invocation(Java RMI),远程Java对象的方法可以被其它Java虚拟机(JVM)调用。Java RMI利用对象序列化对参数进行序列化和反序列化,它不会截断类型,支持真正的面向对象的多态性。
下面是实现Java RMI需要用到的一些package:
·java.rmi
·java.rmi.activation
·java.rmi.dgc
·java.rmi.registry
·java.rmi.server
注意,下面的package名字是以"javax"而非"java"开头的:
·javax.rmi
·javax.rmi.CORBA
·javax.rmi.ssl
是否采用GUI
应用软件通常包含有许多具有不同功能的微型软件。一些微型软件有图形用户界面(GUI)━━可能只是一个简单的窗口或对话框,许多微型软件没有GUI。但是,应用软件本身可能有一个主GUI━━包含有菜单、按钮、工具条、文本框、其它图形功能。GUI主要用于用户输入━━无论用户点击一个按钮或输入信息,GUI也可以向用户提供更多的信息。另外,GUI组件也可以向用户显示系统返回的信息。
要创建GUI,我们需要使用Java Foundation Classes/Swing(JFC/Swing)和Abstract Window Toolkit(AWT)API。那些package中的许多类和界面使我们能够方便地创建按钮、check-box对象、文本框、其它组件,以及组织它们的组件。
创建应用软件的框架和所有GUI组件最为简单的方式是使用NetBeans IDE等集成开发环境(IDE)。该IDE使我们能够拖放组件,由它为我们编写复杂的组件代码。学习使用它非常容易,能够为我们节约大量的时间。但是,所有开发人员必须理解JFC/Swing和AWT的工作原理,因此我们必须亲手进行足够的实践,理解这些概念。
编写GUI软件使用的主要Package
面向AWT
·java.applet
·java.awt
·java.awt.color
·java.awt.datatransfer
·java.awt.dnd
·java.awt.event
·java.awt.font
·java.awt.geom
·java.awt.im
·java.awt.im.spi
·java.awt.image
·java.awt.image.renderable
·java.awt.print
面向JFC/Swing
·javax.swing
·javax.swing.border
·javax.swing.colorchooser
·javax.swing.event
·javax.swing.filechooser
·javax.swing.plaf
·javax.swing.plaf.basic
·javax.swing.plaf.metal
·javax.swing.plaf.multi
·javax.swing.plaf.synth
·javax.swing.table
·javax.swing.text
·javax.swing.text.html
·javax.swing.text.html.parser
·javax.swing.text.rtf
·javax.swing.tree
·javax.swing.undo
当然,我们无需引入所有这些package,只需引入我们使用的package即可。 如果我们使用NetBeans IDE,就会发现,在我们使用JFC/Swing或AWT组件时,它就会在代码中创建引入语句。仅仅从它们的名字中,我们就可以很好地理解这些package的作用。
相关文章推荐
- 利用Java技术编写桌面软件基础
- JAVA基础 day22 File类的方法和应用 利用递归获取目录下的所有文件 Properties类的应用(和IO技术结合,存取配置文件) 打印流和合并流等功能类的学习应用 切割文件练习
- 软件测试开发技术Java初学者需要了解的几个基础问题
- 利用Java技术开发Web网络课件浅议-Java基础-Java-编程开发
- 利用Java 3D技术播放动画之JMF技术-Java基础-Java-编程开发
- 【黑马程序员】Java基础学习技术博客——配置环境变量和编写第一个Java程序
- 利用Java编写手机应用程序PalmOS基础篇
- JAVA基础第三天,eclipse软件的应用和if语句的编写(15-6-18)
- Java中利用JMF编写摄像头拍照程序
- java利用爬虫技术抓取(省、市(区号\邮编)、县)数据
- 一起谈.NET技术,JAVA与.NET的相互调用——利用JNBridge桥接模式实现远程通讯
- 软件测试开发技术Java开发为什么需要UML
- [基础题] 6.(*)按如下要求编写Java程序: (1)编写一个接口:OneToN,只含有一个方法int dispose(int n)
- Java 从基础到进阶学习之路---类编写以及文档凝视.
- BlackBerry 应用程序开发者指南 第一卷:基础--第2章 编写BlackBerry Java应用程序
- 轻量级java snmp设备网管软件开发技术
- JAVA基础【3.3】《Java核心技术1》Java的基本程序设计结构-数据类型
- JAVA基础【3.8】《Java核心技术1》Java的基本程序设计结构-控制流程
- java利用反射技术遍历某个对象的属性及属性值
- 【基础技术】Java基础那些事儿系列