Java课程设计任务书
时间:2026-01-20
时间:2026-01-20
重庆科技学院,2016年Java课程设计任务书
Java课程设计任务书
本次课程设计的目的是通过课程设计的各个项目的综合训练,培养学生实际分析问题、编程和动手能力,提高学生的综合素质。本课程设计尝试使用一些较生动的设计项目,激发学生的学习兴趣,引导学生主动学习,正确理解和接受需要重点掌握的知识点。
【课程设计要求】
1) 选题要求:
本次课程设计所提供的课设题目,每人选择一个题目。
选题分三种类型:普通题、提高题和挑战题,每种题型的起步分分别为:及格、中和良,如在该题型中选题完成良好的可以相应提高分数等级。 如课设能达优的同学必须在课设上机安排时间内参加答辩。
2) 界面要求:
尽量使用swing包实现图形界面,要符合日常软件使用规范来设计菜单和界面。
如果无法实现图形界面,则在命令行方式下也需要提供菜单,方便用户操作。
3) 代码要求:
标识符命名遵循java命名规范。
能够考虑各种异常处理,注重提高程序运行效率。
4) 提交内容:
全部源代码。
课程设计报告 注: 课程设计报告严格按照老师给的《java课程设计报告书
模版》要求撰写,课设报告要求15~20页(不包含代码)。
普通题
1. 题目 计算器
设计内容 设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算、 设计要求 设计的计算器应用程序可以完成家法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。
学习要点 本程序主要练习使用布局管理器设计一个计算器的界面,并练习使用事件监听器处理数据的输入,并完成相关的计算。
设计思路 本应用程序继承自框架类(Frame),此程序使用Frame布局管理器BorderLayout,将单行文本框加入到“North”区域,包含各种按钮的面板Panel p加入到”Center”区域。 包含各种按钮的面板Panel p 采用4行5列的网格布局,然后将数字按钮和运算符按钮以及控制按钮添加到面板中。同时注册按
重庆科技学院,2016年Java课程设计任务书
钮事件监听器。如:
Button b=new Button();
b.addActionListener(事件监听器);
事件监听器中的事件处理方法void actionPerformed(ActionEvent evt)完成主要的按钮事件的处理。事件处理分以下几种情况:数字按钮事件(”0”,”1”,”2”…”8”,”9”)、运算符按钮事件(”+”,”-“,”*”,”/”,”%”)、正负号按钮事件(”+/-“)、小数点按钮事件(”.”)、等号按钮事件(”=”)、求倒按钮事件(”1/x”)、退格按钮事件(”退格”)、清楚按钮事件(“C”)。
在事件处理。
触发按钮事件时,要进一步分析,是重新开始计算时触发的按钮事件还是计算中间触发的按钮事件。
计算器完成的是一个数学表达式,如:3+2,所以可以采用一个链表(LinkedList类)来存储数字或字符,如3,+,2分别存储在链表中,最后运算时,可以一一取出来进行运算。
本应用程序中的数字按钮和运算符按钮可以分别定义以下两个类的对象组件
数字按钮NumberButton类如下:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class NumberButton extends Button
{
int number;
public NumberButton(int number)
{
super(""+number);
this.number=number;
setForeground(Color.blue);
}
public int getNumber()
{
return number;
}
}
运算符按钮OperationButton类如下
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class OperationButton extends Button
{
String 运算符号;
public OperationButton(String s)
{
super(s);
重庆科技学院,2016年Java课程设计任务书
运算符号=s;
setForeground(Color.red);
}
public String get运算符号()
{
return 运算符号;
}
}
相关学习资料
LinkedList类:
LinkedList类在Java标准类库的java.util包定义,它提供域数组类似的服务,包括可以插入或删除元素。与数组不同的是,LinkList对象可以根据需要,动态地改变大小。LinkList对象中存储的是对Object类的一系列引用,对任何类型对象的引用都可以被添加倒LinkList对象中。LinkedList类中有以下方法
public LinkedList() //构造方法
public Object getFirst() //返回链表中的第一个元素
public Object getLast() //返回链表中的最后一个元素
public Object removeFirst() 删除并返回第一个链表元素
public Object removeLast() 删除并返回最后一个链表元素
public void addFirst(Object o) //插入一个元素在为链表的第一个元素 public void addLast(Object o) //插入一个元素为链表的最后一个元素 public boolean contains(Object o) //是否存在该元素
public int size() //返回链表元素个数
public boolean add(Object o) //添加元素o
public boolean remove(Object o)//删除元素o
public boolean addAll(Collection c) //添加一个对象集 c
public void clear() //清除列表中的所有元素
public Object get(int index) //返回指定位置(index)的链表元素
public Object set(int index, Object element)//设定指定位置 …… 此处隐藏:9119字,全部文档内容请下载后查看。喜欢就下载吧 ……