Java课设Word文档下载推荐.docx
《Java课设Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Java课设Word文档下载推荐.docx(50页珍藏版)》请在冰豆网上搜索。
在设计计算器时,可以编写16个java源文件,CalculatorWindow.java、HandleBack.java、HandleClear.java、HandleDigit.java、HandleDot.java、HandleOperation.java、HandleEquality.java、HandlePOrN.java、HandleSin.java、NumberButton.java、OperationButton.java、HandleCos.java、HandleLog.java、HandlePow.java、HandleSqrt.java、HandleTan.java。
计算器除了上述16个java源文件所给出的类外,还需要java系统提供的一些重要的类,如JButton,JTextArea,LinkedList等。
计算器所用到的一些重要的类之间的组合关系如图2.1所示。
HandleBack
HandleClear
HandleDigit
HandleDot
HandleOperation
HandleEquality
HandlePOrN
HandleSin
NumberButton
OperationButton
JButton
JTextArea
LinkedList
HandleCos
HandleLog
HandlePow
HandleSqrt
HandleTan
图2.1类之间的组合关系
2.1CalculatorWindow.java
CalculatorWindow类负责创建计算器的主窗口,该类含有main方法,计算器从该类开始执行。
CalculatorWindow类有14种类型的对象,即上图类的对象。
CalculatorWindow类创建的窗口以及其中主要如图2.2所示。
CalculatorWindow类的主要成员的作用将在后面的详细设计中阐述。
JTextField
图2.2CalculatorWindow窗口及主要的成员对象
2.2NumberButton.java
NumberButton类创建的对象是主类CalculatorWindow窗口中的一个“数字”按钮。
NumberButton类有一个int类型的成员number,标明所创建的按钮所含有的数字。
NumberButton所创建的10个按钮被添加到CalculatorWindow窗口中。
2.3OperationButton.java
OperationButton类创建的对象是主类CalculatorWindow窗口中的一个“运算符”按钮。
OperationButton类有一个String类型的成员operateSign,用于标明所创建的按钮所含有的运算符号。
OperationButton所创建的4个按钮被添加到CalculatorWindow窗口中。
2.4HandleDigit.java
HandleDigit类创建的对象负责处理ActionEvent事件。
当用户单击“数字”按钮时,HandleDigit类所创建的对象负责处理和数字有关的计算过程。
2.5HandleOperation.java
HandleOperation类创建的对象负责处理ActionEvent事件。
当用户单击“运算符”按钮时,HandleOperation类所创建的对象负责处理和运算符有关的计算过程。
2.6HandleDot.java
HandleDot类创建的对象负责处理ActionEvent事件。
当用户单击“.”按钮(小数点)时,HandleDot
类所创建的对象负责处理小数点。
2.7HandlePOrN.java
HandlePOrN类创建的对象负责处理ActionEvent事件。
当用户单击“+/-”按钮(正或负)时,HandlePOrN类所创建的对象负责处理数字的正负转换。
2.8HandleEquality.java
HandleEquality类创建的对象负责处理ActionEvent事件。
当用户单击“=”按钮时,HandleEquality类所创建的对象计算有关数据。
2.9HandleBack.java
HandleBack类创建的对象负责处理ActionEvent事件。
当用户单击“退格”按钮时,HandleBack类所创建的对象负责进行退格操作。
2.10HandleClear.java
HandleClear类创建的对象负责处理ActionEvent事件。
当用户成功单击“清零”按钮(清零操作)时,HandleClear.类所创建的对象负责清除有关的计算结果。
2.11HandleSin.java
HandleSin类创建的对象负责处理ActionEvent事件。
当用户单击“sin”按钮(正弦三角函数)时,HandleSin类所创建的对象负责计算正弦三角函数的值。
2.12HandleCos.java
HandleCos类创建的对象负责处理ActionEvent事件。
当用户单击“cos”按钮(余弦三角函数)时,HandleCos类所创建的对象负责计算余弦三角函数的值。
2.13HandleLog.java
HandleLog类创建的对象负责处理ActionEvent事件。
当用户单击log按钮(对数函数)时,HandleLog类所创建的对象负责计算对数函数的值。
2.14HandlePow.java
HandlePow类创建的对象负责处理ActionEvent事件。
当用户单击“∧”按钮(指数函数)时,HandlePow类所创建的对象负责计算指数函数的值。
2.15HandleSqrt.java
HandleSqrt类创建的对象负责处理ActionEvent事件。
当用户单击“√”按钮(开平方函数)时,HandleSqrt类所创建的对象负责计算开平方函数的值。
2.16HandleTan.java
HandleTan类创建的对象负责处理ActionEvent事件。
当用户单击“tan”按钮(正切三角函数)时,HandleTan类所创建的对象负责计算正切三角函数的值。
3.详细设计
3.1CalculatorWindow类
3.1.1效果图
CalculatorWindow创建的窗口效果如图3.1所示。
图3.1CalculatorWindow创建的窗口
3.1.2UML图
CalculatorWindow类是javax.swing包中JFrame的一个子类,并实现了ActionListener接口。
标明该类的主要成员变量和方法的UML图如图3.2所示。
图3.2CalculatorWindow类的UML图
以下是UML图中有关数据和方法的详细说明。
1.成员变量
1)numberButton是NumberButton型数组,每个单元是一个NumberButton类创建的“数字”按钮对象,该数组的长度为10。
numberButton数组中的“数字”按钮含有数字依次为0,1,2,3,4,5,6,7,8,9。
每个“数字”按钮都注册有ActionEvent事件监视器。
2)operationButton是OperationButton型数组,每个单元是一个OperationButton类创建的运算符按钮对象,该数组的长度为4。
operationButton数组中的运算符按钮含有的字符串依次为“+”、“-”、“*”、“/”。
每个运算符按钮都注册有ActionEvent事件监视器。
3)小数点操作,正负操作,退格操作,等号操作,清零操作,sin,cos,tan,log,sqrt,pow,saveButton,copyButton和clearButton是JButton创建的按钮对象,其上的名字依次为:
“.”、“+/-”、“退格”、=、“清零”、sin、cos、tan、log、sqrt、pow、“保存”、“复制”和“清除”。
这些按钮都注册有ActionEvent事件监视器。
4)resultShow,showComputerProcess是javax.swing包中JTextField创建的文本框,分别用来显示当前计算结果和计算过程。
其中resultShow的文本对齐方式是“右对齐”,showComputerProcess的文本对齐方式是“居中对齐”。
5)saveComputerProcess是javax.swing包中JTextArea创建的文本区,用来显示以往计算结果和计算过程。
6)list是java.util包中LinkedList<
String>
创建的链表对象,该链表中的节点依次来存放第一个运算数、运算符和第二个运算数的字符串表示。
7)handleDigit是HandleDigit类创建的对象。
该对象是数字按钮的监视器,当用户单击数字按钮时,handleDigit对象将调用HandleDigit类实现ActionListener接口中的actionPerformed(ActionEvent)方法。
8)handleOperation是HandleOperation类创建的对象。
该对象是运算符按钮的监视器,当用户单击运算符按钮时,handleOperation对象将调用HandleOperation类实现ActionListener接口中的actionPerformed(ActionEvent)方法。
9)handleBack是HandleBack类创建的对象。
该对象是"
退格"
按钮的监视器,当用户单击"
按钮时,handleBack对象将调用HandleBack类实现ActionListener接口中的actionPerformed(ActionEvent)方法。
10)handleClear是HandleClear类创建的对象。
该对象是“清零”按钮的监视器,当用户单击“清零”按钮时,handleClear对象将调用HandleClear类实现ActionListener接口中的actionPerformed(ActionEvent)方法。
11)handleEquality是HandleEquality类创建的对象。
该对象是等号按钮的监视器,当用户单击等号按钮时,handleEquality对象将调用HandleEquality类实现ActionListener接口中的actionPerformed(ActionEvent)方法。
12)handleDot是HandleDot类创建的对象。
该对象是小数点按钮的监视器,当用户单击小数点按钮时,handleDot对象将调用HandleDot类实现ActionListener接口中的actionPerformed(ActionE