简单计算器程序设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《网络编程技术》结课论文2012 — 2013学年第二学期

题目:简单计算器程序

专业班级:网信10-2

学号:************

姓名:-----------

指导老师:---------

日期:2013-06-25

目录

1引言 (3)

2基础理论 (3)

2.1 AWT 组件 (3)

2.2 Swing 组件 (3)

2.3 java事件处理机制 (4)

3 功能设计 (5)

3.1计算器系统概述 (5)

3.2功能模块设计 (6)

3.3详细设计 (6)

4 系统实现 (7)

4.1需求分析 (7)

4.2设计思路 (8)

4.3主要代码展示及说明 (8)

4.4调试与分析 (12)

5 总结 (12)

参考文献 (13)

1引言

近年来随着计算机和网络在社会领域的发展,java的应用正在不断地走向深入, Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口为企业计算及电子商务应用系统提供了有关技术和丰富的类库。

本次设计是通过java编程技术来设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算,该计算器可以实现加法、减法、乘法、除法的简单运算,也可以实现一些简单的扩展运算,这次课程设计的主要目的在于检测对java 应用的熟练程度,发现问题并及时改正和提高,同时扩展对java知识的进一步了解和认识,强化自己的编程能力,为将来在新的旅途中能更好的发挥自身的才能!

2基础理论

2.1 AWT 组件

布局管理器管理组件如何放置在容器中,AWT 中最常用的四种布局类:FlowLayout、BorderLayout、GridLayout、CardLayout。本项目主要采用了GridLayout 布局。

2.2 Swing 组件

Swing组件的多样化:

Swing是AWT的扩展,它提供了许多新的图形界面组件。Swing组件以"J"开头,除了有与AWT类似的按钮(JButton)、标签(JLabel)、复选框(JCheckBox)、菜单(JMenu)等基本组件外,还增加了一个丰富的高层组件集合,如表格

(JTable)、树(JTree)。

MVC(Model-View-Control)体系结构

Swing胜过AWT的主要优势在于MVC体系结构的普遍使用。在一个MVC用户界面中,存三个通讯对象:模型、视图和控件。模型是指定的逻辑表示法,视图是模型的可视化表示法,而控件则指定了如何处理用户输入。当模型发生改变时,它会通知所有依赖它的视图,视图使用控件指定其相应机制。

为了简化组件的设计工作,在Swing组件中视图和控件两部分合为一体。每个组件有一个相关的分离模型和它使用的界面(包括视图和控件)。比如,按钮JButton有一个存储其状态的分离模型ButtonModel对象。组件的模型是自动设置的,例如一般都使用JButton 而不是使用ButtonModel 对象。另外,通过Model 类的子类或通过实现适当的接口,可以为组件建立自己的模型。把数据模型与组件联系起来用setModel( )方法。

MVC是现有的编程语言中制作图形用户界面的一种通用的思想,其思路是把数据的内容本身和显示方式分离开,这样就使得数据的显示更加灵活多样。比如,某年级各个班级的学生人数是数据,则显示方式是多种多样的,可以采用柱状图显示,也可以采用饼图显示,也可以采用直接的数据输出。因此在设计的时候,就考虑把数据和显示方式分开,对于实现多种多样的显示是非常有帮助的。

2.3 java事件处理机制

Java 最新的事件处理方法是基于授权事件模型,事件源生成事件并将其发送至一个或多个监听器,监听器简单地等待,直到它收到一个事件。一旦事件被接受,监听器将处理这些事件,然后返回。

事件:

在授权事件模型中,事件是一个描述事件源状态改变的对象。

通过鼠标、键盘与 GUI 界面直接或间接交互都会生成事件。如:按下一个按钮、通过键盘输入一个字符、选择列表框中的一项、点击一下鼠标等。

事件源:

事件源是一个生成事件的对象

一个事件源可能会生成不同类型的事件,事件源提供了一组方法,用于为事件注

册一个或多个监听器。每种事件的类型都有其自己的注册方法。一般形式为:public void addListener (TypeListener e)

AWT采取的事件控制过程:

监听器对象属于一个类的实例,这个类实现了一个特殊的接口,名为“监听者接口”,事件源是一个对象,它可以注册一个或多个监听器对象,并向其发送事件对象。事件源将在发生事件时向所有注册的监听器发送事件对象。监听器对象使用事件对象中的信息来确定它们对事件的响应

事件模型:

1.基于代理(授权)事件模型

事件处理是一个事件源授权到一个或者多个事件监听器。其基本原理是:组件激发事件,事件监听器监听和处理事件,可以调用组件的addListener 方法向组件注册监听器。把其加入到组件以后,如果组件激发了相应类型的事件,那么定义在监听器中的事件处理方法会被调用。

2.此模型主要由以三种对象为中心组成

事件源

由它来激发产生事件,是产生或抛出事件的对象。

事件监听器

由它来处理事件,实现某个特定EventListener 接口,此接口定义了一种或多种方法,事件源调用它们以响应该接口所处理的每一种特定事件类型。

事件

具体的事件类型,事件类型封装在以java.util.EventObject为根的类层次中。当事件发生时,事件记录发生的一切事件,并从事件源传播到监听器对象

3 功能设计

3.1计算器系统概述

标准计算器的界面采用“图形界面程序设计(GUI)”。GUI 为用户和应用程序之间的交互提供了直观、方便的交流方式。用户使用鼠标、键盘操作图形界

相关文档
最新文档