当前位置:文档之家› JAVA简单画板程序设计实验报告

JAVA简单画板程序设计实验报告

JAVA简单画板程序设计实验报告
JAVA简单画板程序设计实验报告

JAVA期末画板实验报告

课程题目:

运用JAVA语言编写一个画板程序,这个画板要有画图,特殊图形绘制,颜色改变,画笔大小改变等功能。

设计思想:

1.进行界面设计

2.进行算法实现

3.运行调试

4.总结问题

设计过程:

A.界面设计

新建一个Jframe容器,然后定义一个panel(Panel convas2),convas2是工具栏。用borderlayout布置容器的边框布局,将工具栏放在NORTH部分。完成界面设计。

add(canvas2,BorderLayout.NORTH);

Panel canvas2 = new Panel();

添加工具按键

Panel canvas2 = new Panel();

Button btn1 = new Button("直线");

Button btn2 = new Button("椭圆");

Button btn3 = new Button("矩形");

Button btn4 = new Button("清除");

Button btn5 = new Button("画笔");

Button btn6 = new Button("橡皮");

Choice choice = new Choice();

Choice choice1 = new Choice();

canvas2.add(choice);

canvas2.add(choice1);

canvas2.add(btn1);

canvas2.add(btn2);

canvas2.add(btn3);

canvas2.add(btn4);

canvas2.add(btn5);

canvas2.add(btn6);

在工具表中,有两个下拉菜单,分别收录画笔的大小和颜色。1.画笔的大小:

choice1.add("1");

choice1.add("3");

choice1.add("5");

choice1.add("7");

choice1.add("9");

2.画笔颜色

choice.add("黑色");

choice.add("蓝色");

choice.add("红色");

choice.add("黄色");

choice.add("绿色");

3展示画板

B.算法实现

运用画板,首先要对工具栏按键和鼠标进行监听,然后对监听进行响应。运行相应程序进行画图

1.监听程序展示:

choice.addItemListener(this);

choice1.addItemListener(this);

btn1.addActionListener(this);

btn2.addActionListener(this);

btn3.addActionListener(this);

btn4.addActionListener(this);

btn5.addActionListener(this);

btn6.addActionListener(this);

addMouseListener(this);

addMouseMotionListener(this);

2.按键监听响应

监听到按键后,判断当前会话工具

public void actionPerformed(ActionEvent e) {

if(e.getSource().equals(btn1))

{

a='1';

}

if(e.getSource().equals(btn2))

{

a='2';

}

if(e.getSource().equals(btn3))

{

a='3';

}

if(e.getSource().equals(btn4))

{

Graphics g = this.getGraphics();

g.clearRect(0, 0, this.getWidth(), this.getHeight());

}

if(e.getSource().equals(btn5))

{

a='4';

}

if(e.getSource().equals(btn6))

{

a='5';

}

}

定义一个变量a,对按键监听进行响应,例如当监听到btn1时赋值a=‘1’(a为char型),即当前工具为直线。但是当监听到btn4时不进行对a赋值而是直接进行清除操作,由于清除操作是对画布进行清除,不参与鼠标事件,因此可以直接执行。

3.鼠标监听响应

a.鼠标按钮按下事件,获取画图起始坐标x0,y0.

public void mousePressed(MouseEvent e)

{

x0=e.getX();

y0=e.getY();

}

b.鼠标移动事件

public void mouseMoved(MouseEvent e){

}

c.鼠标按钮松开事件,此次响应完成对直线,椭圆,矩形进行

绘制。

public void mouseReleased(MouseEvent e)

{

Graphics2D g = (Graphics2D)this.getGraphics();

size=new

BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL);

g.setColor(b);

g.setStroke(size);

switch(a)

{

case'1':

g.drawLine(x0, y0, e.getX(), e.getY());

break;

case'2':

g.drawOval(x0, y0, e.getX() - x0, e.getY() - y0);

break;

case'3':

g.drawRect(x0, y0, e.getX() - x0, e.getY() - y0);

break;

}

}

d.鼠标进入事件:

public void mouseEntered(MouseEvent e){}

e.鼠标离开事件:

public void mouseExited(MouseEvent e){}

? f.鼠标单击事件:

public void mouseClicked(MouseEvent e){}

g.鼠标拖动事件:此次响应实现画笔(随笔画),橡皮的绘制。。

public void mouseDragged(MouseEvent e) {

Graphics2D g = (Graphics2D)this.getGraphics();

size=new

BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL);

g.setColor(b);

g.setStroke(size);

switch(a)

{

case'4':

g.drawLine(x0, y0, e.getX(), e.getY());

x0 = e.getX();

y0 = e.getY();

break;

case'5':

g.clearRect(x0 - 10, y0 - 10, 20, 20);

x0 = e.getX();

y0 = e.getY();

break;

}

}

4.下拉列表响应

a.颜色下拉列表响应:

if(e.getSource()==choice){

if(choice.getSelectedIndex()==0)

b=Color.black;

if(choice.getSelectedIndex()==1)

b=Color.BLUE;

if(choice.getSelectedIndex()==2)

b=Color.red;

if(choice.getSelectedIndex()==3)

b=Color.yellow;

if(choice.getSelectedIndex()==4)

b=Color.green;

}

调用choice.getSelectedIndex()返回被选中的选项

的序号(下拉列表中第一个选项序号为0,依次递加。)

即进行选择颜色的操作

b.画笔大小下拉列表响应:

if(e.getSource()==choice1)

{

if(choice1.getSelectedItem()=="1")

{

con=1;

}

else if(choice1.getSelectedItem()=="3")

{

con=3;

}

else if(choice1.getSelectedItem()=="5")

{

con=5;

}

else if(choice1.getSelectedItem()=="7")

{

con=7;

}

else if(choice1.getSelectedItem()=="9")

{

con=9;

}

}

调用choice1.getSelectedItem()返回被选中选项的标签文本字符串,即确定画笔的大小(con)。

5.工具栏工具实现程序详解

(1)Graphics2D g = (Graphics2D)this.getGraphics();

size=new BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke.JOIN

_BEVEL);

g.setColor(b);

g.setStroke(size);

绘制图形用到类Graphics2D,其中包括很多绘制图形的方法,定义一个Graphics2D类g,用getGraphics()来得到一个Graphics2D对象,它相当于组建的绘图环境,可以进行各种绘图操作。

size=new

BasicStroke(con,BasicStroke.CAP_BUTT,Basi

cStroke.JOIN_BEVEL);

定义一个BasicStroke类 size来确定画笔的大小,其中BasicStroke类定义针对图形图元轮廓呈现属性的一个基本集合,这些图元使用 Graphics2D 对象呈现,而该对象的 Stroke 属性设置为此 BasicStroke。其中con 为画笔宽度,CAP_BUTT指无装饰地结束未封闭的子路径和虚线线段,JOIN_BEVEL通过直线连接宽体轮廓的外角,将路径线段连接在一起。(以上内容为网上查找资料所得。)(2)实现直线,椭圆,矩形绘制:

switch(a)

{

case'1':

g.drawLine(x0, y0, e.getX(), e.getY());

break;

case'2':

g.drawOval(x0, y0, e.getX() - x0, e.getY() - y0);

break;

case'3':

g.drawRect(x0, y0, e.getX() - x0, e.getY() - y0);

break;

}

(3)随笔画和橡皮

switch(a)

{

case'4':

g.drawLine(x0, y0, e.getX(), e.getY());

x0 = e.getX();

y0 = e.getY();

break;

case'5':

g.clearRect(x0 - 10, y0 - 10, 20, 20);

x0 = e.getX();

y0 = e.getY();

break;

}

6.主类

程序得以运行的入口,进入主类后即运行litao()类。

C.调试运行

调试运行后得到了画板和预期的所有功能,实现结果展示:

D.遇到问题

1.绘制完成后,将窗口最大化或者最小化后再打开,原本绘制的图形消失。尚未解决。

2.确定画笔大小时不得要领,后来通过查找资料解决。

附表1:

源程序:

import java.awt.*;

import java.awt.event.*;

import javax.swing.JFrame;

public class litao extends JFrame implements MouseMotionListener,MouseListener,ActionListener, ItemListener {

Panel canvas2 = new Panel();

Button btn1 = new Button("直线");

Button btn2 = new Button("椭圆");

Button btn3 = new Button("矩形");

Button btn4 = new Button("清除");

Button btn5 = new Button("画笔");

Button btn6 = new Button("橡皮");

Choice choice = new Choice();

Choice choice1 = new Choice();

Color b;

int x0,y0;

char a='4';

int con=1;

BasicStroke size;

private static Color[] colors = { Color.black, Color.blue, Color.red,Color.yellow, Color.green };

public litao()

{

choice1.add("1");

choice1.add("3");

choice1.add("5");

choice1.add("7");

choice1.add("9");

choice.add("黑色");

choice.add("蓝色");

choice.add("红色");

choice.add("黄色");

choice.add("绿色");

canvas2.add(choice);

canvas2.add(choice1);

canvas2.add(btn1);

canvas2.add(btn2);

canvas2.add(btn3);

canvas2.add(btn4);

canvas2.add(btn5);

canvas2.add(btn6);

choice.addItemListener(this);

choice1.addItemListener(this);

btn1.addActionListener(this);

btn2.addActionListener(this);

btn3.addActionListener(this);

btn4.addActionListener(this);

btn5.addActionListener(this);

btn6.addActionListener(this);

addMouseListener(this);

addMouseMotionListener(this);

add(canvas2,BorderLayout.NORTH);

setBackground(Color.white);

canvas2.setBackground(Color.blue);

this.setBackground(Color.white);

setSize(800, 600);

setVisible(true);

}

public void paint(Graphics g)

{

}

public void actionPerformed(ActionEvent e) { if(e.getSource().equals(btn1))

{

a='1';

}

if(e.getSource().equals(btn2))

{

a='2';

}

if(e.getSource().equals(btn3))

{

a='3';

}

if(e.getSource().equals(btn4))

{

Graphics g = this.getGraphics();

g.clearRect(0, 0, this.getWidth(), this.getHeight());

}

if(e.getSource().equals(btn5))

{

a='4';

}

if(e.getSource().equals(btn6))

{

a='5';

}

}

public void mousePressed(MouseEvent e)

{

x0=e.getX();

y0=e.getY();

}

public void mouseMoved(MouseEvent e){

}

public void mouseReleased(MouseEvent e)

{

Graphics2D g = (Graphics2D)this.getGraphics();

size=new

BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke. JOIN_BEVEL);

g.setColor(b);

g.setStroke(size);

switch(a)

{

case '1':

g.drawLine(x0, y0, e.getX(), e.getY());

break;

case '2':

g.drawOval(x0, y0, e.getX() - x0, e.getY() - y0);

break;

case '3':

g.drawRect(x0, y0, e.getX() - x0, e.getY() - y0);

break;

}

}

public void mouseEntered(MouseEvent e){}

public void mouseExited(MouseEvent e){}

public void mouseClicked(MouseEvent e){}

public void mouseDragged(MouseEvent e) { Graphics2D g = (Graphics2D)this.getGraphics();

size=new

BasicStroke(con,BasicStroke.CAP_BUTT,BasicStroke. JOIN_BEVEL);

g.setColor(b);

g.setStroke(size);

switch(a)

{

case '4':

g.drawLine(x0, y0, e.getX(), e.getY());

x0 = e.getX();

y0 = e.getY();

break;

case '5':

g.clearRect(x0 - 10, y0 - 10, 20, 20);

x0 = e.getX();

y0 = e.getY();

break;

}

}

public void itemStateChanged(ItemEvent e) { if(e.getSource()==choice){

if(choice.getSelectedIndex()==0)

b=Color.black;

if(choice.getSelectedIndex()==1)

b=Color.BLUE;

if(choice.getSelectedIndex()==2)

b=Color.red;

if(choice.getSelectedIndex()==3)

b=Color.yellow;

if(choice.getSelectedIndex()==4)

b=Color.green;

}

if(e.getSource()==choice1)

{

if(choice1.getSelectedItem()=="1")

{

con=1;

}

else if(choice1.getSelectedItem()=="3")

{

con=3;

}

else if(choice1.getSelectedItem()=="5")

{

con=5;

}

else if(choice1.getSelectedItem()=="7")

{

con=7;

}

else if(choice1.getSelectedItem()=="9")

{

con=9;

}

}

}

public static void main(String[] args) { new litao();

}

}

用户界面设计实验报告(中南民族大学)

《用户界面设计》实验报告 学号: 姓名: 班级名称: 指导教师:李波 实验日期:

目录 Experiment 1: Evaluation Practices (1) Experiment 2: Design a graphic user interface (3) Experiment 3: Error Messages GUI (12) Experiment 4: Help Document (14)

Experiment 1: Evaluation Practices Use the blank provided to answer the questions. Answer the questions on a scale of 1 to 5, where 1 is a strong no, 5 is a strong yes, and 3 is neutral. If the question does not apply, use a 0.

Experiment 2: Design a graphic user interface Now, you can use the usability measurement to design a graphic user interface .First, you must select a system to finish sessions or tasks for users, so users’ requirements must be analyzed to define all functions you want to realize. Second, you must draw a graphic UI using the software tools, such as Microsoft visual studio, or Visio, or others. All functions must be appeared in this GUI include a main interface and all assistant interfaces. Finally, you must explain why and how you design these GUIs according to the usability measurement and the EIGTH GOLDEN RULES. The document format is described as follow. You can finish this work by PPT or word. 1. The system requirement The system requirement is described here. The main contents include the aims and what the users want to do. 随着信息时代的发展,计算机管理的应用越来越广泛,随着计算机的普及,就连调查问卷也慢慢的脱离了纸质化。对于一个比较大的公司而言,对其客户进行调查问卷是很有必要进行的,而由于客户的分布广,进行纸质的调查问卷不仅浪费财力,还浪费了物力,因此网上调查就避开这一缺点。因此,我设计了一个网上调查问卷系统。这个系统的用户有两类,一类是经销商,一类是经销商的客户,客户通过网上填写问卷,经销商则对客户的问卷进行回收,统计,分析,以做出相应的出售方案。 The aims 1)用户管理

几何画板实验报告

一.实验内容:画出一个正方形 二.实验目的:学会使用变换中的旋转按钮 三.实验步骤: ①画出一条线段; ②选中线段左端点双击,标记中心; ③选中线段和另一端点,选择变换中的旋转按钮,并设置旋转角度为90°,然后在依次做出另外两条边。 四.实验结果 实验二 一实验内容:构造三角形的中线 二实验目的:学会构造线段中点

三实验步骤: ①单击线段工具,构造出一个三角形ABC; ②选中线段AB,执行构造-中点命令,构造出AB中点D ③单击线段工具,连接CD. 四实验结果 实验三 一实验内容:构造三角形的外心 二实验目的:学会构造线段的中垂线 三实验步骤: ①单击线段工具,构造出一个三角形ABC; ②选中线段AB,执行构造-中点命令,构造出AB中点D,同时选中AB和D,执行构造-垂线

③在AC上重复②,两垂线交点即为外心 四实验结果 一实验内容:绘制三角形的内心 二实验目的:学会构造已知角的平分线 三实验步骤: ①画出任意三点A,B,C,选中A,B.C三点,执行构造-线段,构造出三角形ABC; ②依次选中B,A,C,执行构造-角平分线,构造出BAC ∠的角平分线i; ③按照②的步骤做出ABC ∠的角平分线j; ④选中i,j,执行构造-中点命令,构造出三角形内心D; ⑤选中i,j,执行显示-隐藏平分线,隐藏平分线。 四实验结果:

实验五 一实验内容:绘制函数x =的函数图像 y3 二实验目的:绘图菜单的使用方法 三实验步骤: ①执行绘图-定义坐标系命令,新建坐标系,并将原点坐标的标签设为O; ②执行数据-新建函数命令,新建函数x =; y3 ③选中函数,执行绘图-绘制函数命令,画出x =的函数图像. y3 四实验结果

大学java课程设计实验报告_计算器

JAVA课程设计报告 组员信息: 第(二)组 计算器的实现问题 问题描述:制作一个计算器 基本要求:要求实现类似Windows操作系统里面的标准计算器。 在此基础上实现部分科学性的功能。 测试数据:分别对加、减、乘、除和sin、cos、tan函数进行测试 算法思想:使用String定义的数组a[25]对每个按钮进行按钮赋值,创建一个Panel进行字符和数字的存放,调用 addActionListener()对各个时间进行监听。调用 系统库函数对数值进行运算。 模块划分:1、主函数main()创建一个计算器。 2、void actionPerformed(ActionEvent e)对鼠标 点击的事件进行响应以及在文本框中的显示。 3、各Buuton对应的功能: “开方”:对输入数字开方 “平方”:对输入数字平方

“getResult()”:对四则运算进行分别运算操 作 “backspace”:取消上一次的操作 “CE”:取消上一次运算的操作 “C”:清空作用 “sin”:对输入数据进行sin运算 “cos”:对输入数据进行cos运算 “tan”:对输入数据进行tan运算 “+/-”:对输入的数据取反 “+”,“-”,“*”,“/”:对数据进行四则 运算 源程序: package hechongwei; import https://www.doczj.com/doc/f416664137.html,ng.String; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; import https://www.doczj.com/doc/f416664137.html,ng.Math; class Calculator extends JFrame implements ActionListener

Java程序设计-实验报告1-模板 (1)

实验报告 课程名称Java程序设计 实验项目实验一类和对象 系别_________计算机_________ 专业/班级_______计算机类/1402______ 姓名_____李馨雪________ 实验日期______2015.10.10______ 成绩_______________________ 指导教师

一、实验题目:实验一类和对象 二、实验内容: (1)用类描述计算机中CPU的速度和硬盘的容量。要求Java应用程序有4个类,名字分别是PC、CPU、HardDisk和Test,其中Test是主类。 1)PC类与CPU类和HardDisk类关联的UML图如图所示。 其中,CPU类要求getSpeed()返回speed的值,setSpeed(int m)方法 将参数m的值赋值给speed。 HardDisk类要求getAmount()返回amount的值,setAmount(int m)方 法将参数m的值赋值给amount。 PC类要求setCPU(CPU c)将参数c的值赋值给cpu,要求setHardDisk (HardDisk h)方法将参数h的值赋值给HD,要求show()方法能显示 cpu的速度和硬盘的容量。 2)主类Test的要求 main()方法中创建一个CPU对象cpu,其speed设置为2200; main()方法中创建一个HardDisk对象disk,其amount设置为200; main()方法中创建一个PC对象pc, pc调用setCPU方法,实参是cpu;调用setHardDisk方法,实参是 disk;调用show方法。 (2)设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声,要求如下: 1)编写接口Animal,有2个抽象方法cry()和getAnimaName(); 2)编写模拟器类Simulator,该类有一个playSound(Animal animal)方法,其形参是Animal类型,可以调用实现Animal接口的类所重写的cry()方法播放具体动物的声音,调用重写方法显示动物种类的名称; 3)编写实现Animal接口的Dog类和Cat类。具体的UML图如下所示:4)编写主类Application,其main方法中至少包含如下代码: Simulator si=new Simulator();

JAVA简单画板程序设计实验报告

JAVA期末画板实验报告 课程题目: 运用JAVA语言编写一个画板程序,这个画板要有画图,特殊图形绘制,颜色改变,画笔大小改变等功能。 设计思想: 1.进行界面设计 2.进行算法实现 3.运行调试 4.总结问题 设计过程: A.界面设计 新建一个Jframe容器,然后定义一个panel(Panel convas2),convas2是工具栏。用borderlayout布置容器的边框布局,将工具栏放在NORTH部分。完成界面设计。 add(canvas2,BorderLayout.NORTH); Panel canvas2 = new Panel(); 添加工具按键 Panel canvas2 = new Panel(); Button btn1 = new Button("直线"); Button btn2 = new Button("椭圆"); Button btn3 = new Button("矩形"); Button btn4 = new Button("清除"); Button btn5 = new Button("画笔"); Button btn6 = new Button("橡皮"); Choice choice = new Choice(); Choice choice1 = new Choice(); canvas2.add(choice); canvas2.add(choice1);

canvas2.add(btn1); canvas2.add(btn2); canvas2.add(btn3); canvas2.add(btn4); canvas2.add(btn5); canvas2.add(btn6); 在工具表中,有两个下拉菜单,分别收录画笔的大小和颜色。1.画笔的大小: choice1.add("1"); choice1.add("3"); choice1.add("5"); choice1.add("7"); choice1.add("9"); 2.画笔颜色 choice.add("黑色"); choice.add("蓝色"); choice.add("红色"); choice.add("黄色"); choice.add("绿色"); 3展示画板

实验8MATLAB图形用户界面设计实验报告

实验8 MATLAB图形用户界面设计实验报告实验报告 课程名称:MATLAB应用成绩: 实验项目名称:MATLAB图形用户界面设计实验时间:11.6 指导教师(签名): 班级:XXXXX 姓名:XXXXX 学号:XXX 实验目的: 1. 熟悉MATLAB的菜单设计方法 2. 熟悉MATLAB的主要控件使用方法 3. 熟悉MATLAB的GUI设计流程 实验环境: MATLAB 7.1 实验内容及过程: 简单计算器的设计:在MATLAB GUI的实验环境中,通过MATLAB图形用户界面设计的方法,设计一个 简单的计算器,以实现简单数据的退出、清屏、删除、四则运算等基本功能。 实验过程、结果及分析:

计算器代码: function varargout = jsq(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 第 1 页共 6 页 'gui_OpeningFcn', @jsq_OpeningFcn, ... 'gui_OutputFcn', @jsq_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

实验二、应用轨迹与跟踪功能绘制图形(几何画板)

实验二、应用轨迹与跟踪功能绘制图形 一、实验目的: 认识、分清主动点和被动点,学会应用轨迹与追踪功能绘制图形 二、实验内容 1、作出双曲线、抛物线的轨迹 2、设ABCD为矩形,P是AB上的一动点,过P作PE⊥AC于E,PF⊥BD于F, (1)作出EF的中点轨迹。 (2)作出线段EF运动的轨迹。 3、三角形ABC顶点A在一定圆上运动,另外两个顶点固定,作出三角形ABC外心的轨迹。并讨论分出各种情形。 4、作出与已知定圆、定直线都相切的圆的圆心的轨迹。 三、实验步骤 1、(1)做一条射线,取端点A和射线上一点B构成线段作为定长2a 做一条直线,上面取两点F1 、F2为焦点。|F1 F2| >|AB| 再在射线上取点C 构造线段AC、BC 以F1为圆心,AC为半径做圆,F2为圆心,BC为半径做圆。 两圆相交的两点分别记为F、G。 选中点C、F构造轨迹,选中点C、G构造轨迹。则得到双曲线的一支。同理作图得双曲线另一支。 (2)做一条直线,取点上两点A、B 构造线段AB,并以A为圆心,AB为半径做圆,交直线于点C

选中点A和直线构造垂线I 在此垂线上取一点E。 选中点E和垂线I,构造垂线m。 选中点E、B构造线段。并选择它作中点F。 选中F和线段构造垂线n。 m与n交于一点G。 选中点E、G构造轨迹。则得到抛物线。 2、(1)制作矩形ABCD,取P上一点。连接AC、BD。 选中P和AC构造垂线,与AC的交点为E。 选中P和BD构造垂线,与BD的交点为F。 选中E、F构造线段。选择线段EF构造中点。 选中P、及EF的中点构造轨迹。 (2)选中点P及线段EF构造轨迹。 3、在平面上作一个圆。取圆上一点O。构造三角形BCD 分别取三条边的中点作垂线。三条垂线交于一点即是外心E。 选中点A和外心E,构造轨迹。 讨论:当三角形为锐角三角形时,轨迹在三角形内或与三角形最长边相交;当三角形为直角三角形,该轨迹的一个端点为三角形斜边中点,其他点均在三角形外,并平行于竖直的直角边;当三角形为钝角时,轨迹完全在三角形外,或与三角形最长边相交。 结论:外心运动轨迹在定点CD边所做的中垂线上。 4、构造定圆O和定直线k。

Java课程设计实验报告

Java课程设计实验报告 导语:日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。以下是小编为大家整理分享的Java课程设计实验报告,欢迎阅读参考。 1、加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。 2、使用本学期学习的Java SE技术完成多功能日历GUI 程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。 3、在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。 1、问题描述准确、规范。 2、程序结构合理,调试数据准确、有代表性、。 3、界面布局整齐,人机交互方便。 4、输出结果正确。 5、正确撰写实验报告。 编写一个GUI程序实现日历的功能。一年日历用12页

显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农 历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报 时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。 1、在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。 2、在第一次上机实验时讨论分工,分工明确之后,分头合作进行。 3、各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。 4、根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。 5、详细的上机实验步骤见任务分工及程序设计进度表。 经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能

java课程设计实验报告

一实验目的 加深学生对课堂讲授内容的理解,从计算机语言的基本概念、程序设计的基本方法、语法规则等方面加深理解,打好程序设计、开发软件的良好基础。在上机实验中,提高学生对Java语言各部分内容的综合使用能力,逐步掌握Java语言程序设计的规律与技巧。在对Java 程序的调试过程中,提高学生分析程序中出现的错误和排除这些错误的能力。通过上机实践,加深学生对计算机软件运行环境,以及对操作系统与计算机语言支持系统相互关系的了解。 二、实验要求 (1)问题描述准确、规范; (2)程序结构合理,调试数据准确、有代表性; (3)界面布局整齐,人机交互方便; (4)输出结果正确; (5)正确撰写实验报告。 三、设计内容 1、计算器 计算器要有GUI界面,用户可以输入所需计算的数值,可以进行加、减、乘、除四种最基本的运算和混合运算,可以求一个数值的平方及倒数,可以进行阶乘运算,要能运算小数,并且不会产生精度损失,在必要情况下,可以进行四舍五入的运算。允许正负数间的运算。要求使用Applet实现该计算器,当用浏览器运行程序时,点击网页中的按钮,则计算器弹出,浮在网页上,再次点击按钮时,计算器消失。 2、文本编辑器 可以设置文本的字体、大小、颜色等基本参数,可以读取计算机中TXT文件,可以生成一个新的TXT文件。其他功能参照windows的文本编辑器。

四.实验步骤 (1)上机实验之前,为课程设计的内容作好充分准备。对每次上机需要完成的任务进行认真的分析,画出程序流程图,手工写出符合任务要求的程序清单,准备出调试程序使用的数据,以便提高上机实验的效率。 (2)按照实验目的和实验内容进行上机操作。录入程序,编译调试,反复修改,直到使程序正常运行,得出正确的输出结果为止。 (3)根据实验结果,写出实验报告。 五. 源代码及运行结果 1.计算器源代码 import .*; import .*; import .*; public class jisuanqi extends WindowAdapter { , "=", "+","n!" ,"关闭" }; static double a, sum=1; static String s, str ;rame(); } public void frame() { etBackground; txt = new TextField(""); (false);ddActionListener(new buttonlistener());ddActionListener(new close()); (this); (new BorderLayout());.计算器运行界面(1)计算器主界面

java画板课程设计报告

画板 一、需求分析 平时生活中,我们会需要处理一些基本的图像,也有可能需要花一些简单的图像,平时所使用的图形处理工具有PhotoShop、Windows 画图工具等,其中PhotoShop 是一款非常强大的图形处理工具,Windows 画图工具则是一款较为简单的画图工具,功能较为简单,用Windows画图工具,是一种比较简单与具有代表性的画图工具,虽然功能不够强大,但具有大多图片处理程序所必需的基本功能:铅笔画图、各种数学函数图形、填色、取色、橡皮擦等等。这次试验中我做的就是一个仿照windows画板的程序。 功能:1.利用graphics 类来向界面上画上相应内容 2.能够画出直线,矩形,多边形,椭圆形,圆矩形等 3.能够实现橡皮,刷子,喷枪等工具。 4.能够实验颜色的设置 5.能够保存图片和打开图片(当保存名一致时需提示) 6.界面尽量合理,可以仿照windows画板界面。 二、概要设计

流程图 画板软件类图 1.工具接口Tool: 从图中可以看到,工具接口Tool 定义了鼠标动作的四个方法,分别是拖动mouseDrapped()、移动mouseMoved()、松开mouseReleased()、按下

mousePressed()、点击mouseClicked()五个动作,并用String 类型的常量属性来定义工具的类型。这个接口只有一个实现类AbstractTool,而每个工具类 都是去扩展AbstractTool 类,在图中表现为Tool1、Tool2…….ToolN。 2.Tool的实现类AbstractTool AbstractTool 是Tool 的实现类,也是一个抽像类,所以并不能被创建,只能被继承。此类实现Tool 中定义的所有方法,并扩展了其它方法,让其子类继承或者重写。该类中为其他的工具类提供了大部分的实现,那么它的子类就可以不必再做重复的实现,只关心与本类相关的逻辑, 3.AbstractTool的子类 AbstractTool 一共有ArrowTool(箭头)、PencilTool(铅笔)、BrushTool(刷子)、EraserTool(橡皮擦)、LineTool (直线)、RectTool (矩形)、PolygonTool (多边形)、RoundTool (椭圆形)、RoundRectTool(圆矩形)、AtomizerTool (喷墨)、ColorPickedTool(颜色选择)11 个子类, 4. 界面类ImageFrame 这个画图工具的界面的主要放在这个类中实现 5. 业务逻辑类ImageService 除鼠标的画图功能外(画图功能由Tool 的实现类完成),初始化画板、图片的新建打开与保存、各种面板的显示与隐藏、颜色的编辑、整个界面的刷新、菜单等业务逻辑都放在这个类中实现, 对象,它并没有保存一些状态属性。 6 .文件选择类ImageFileChooser ImageFileChooser 类继承了JFleChooser 类,JFleChooser 是Java 提供的一个简单的文件选择机制,我们这里扩展这个类,是为了增加我们自己的文件过滤器。 三、运行环境、开发语言 Window xp 和elipse Java语言

Visual FoxPro 程序设计实验报告

VF程序设计实验报告 图书馆管理系统 专业: 学号: 姓名: 指导教师: 2010年12月31日

目录 第一部分系统概述--------------------------------2 第二部分系统功能模块设计------------------------2 第三部分系统数据库及表设计----------------------2 第四部分系统菜单设计----------------------------5 第五部分系统界面设计----------------------------6 第六部分系统相关程序代码-----------------------13 第七部分实验报告小结---------------------------22 第八部分参考资料-------------------------------22

一、系统概述 近年来,随着图书馆规模的不断扩大,图书数量相应的增加,有关图书的各种信息量也成倍增加,面对庞大的信息量,传统的人工管理户导致图书管理的混乱,人力与物力过多的浪费,图书管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理。因此,为了充分发挥了图书馆的功效,最大限度地为读者服务,必须制定一套合理、有效,规范和实用的图书馆管理系统,对图书资料进行集中统一的管理。 根据上述需要,我们建立本图书馆管理系统。 根据图书、读者和管理员三者之间的关系,本系统主要实现读者对图书的查询、个人信息的修改和管理员对读者、图书的管理。 本系统采用VF6.0作为开发工具。 二、系统功能模块设计 本系统可以完成一般图书馆关于图书查询、借阅及书库管理的主要功能。其中:图书查询模块可以查询所需要的图书;读者管理模块中,读者可以查看自己的信息,对登陆密码进行修改,管理员可以对读者进行添加和删除;图书管理模块中,管理员可以为读者进行图书的借阅和归还操作,以及对图书的信息进行修改,如加入新书、删除不能使用的图书和更新图书的信息;报表打印模块中,实现对需要的信息进行打印输出。系统结构下图所示。 三、数据库及表设计 经分析,图书馆管理系统主要涉及了学生、管理员和图书三部分。因此需要建立的实体就是学生、管理员和图书三个。 根据系统模块的设计,可以的到本系统需要建立的基本表为:读者信息表、

几何画板实验报告(函数y=Asin(ωx+φ)图象)

实验报告 实验项目:设计制作课堂教学型的课件 班级:姓名: 学号:实验时间:2013 年月日 一、实验目的:通过计算机辅助教学的理论与实践相结合,查阅资料,设计制作中学数学某一节课(自选内容)的课堂教学型课件,在实验过程中掌握课堂教学型课件设计方法与制作技巧。 二、实验设备:多媒体计算机、几何画板等 三、教学设计方案

四、课件的创作思路 按照课本要求,考虑到函数y=Asin(ωx+φ)的图象相对难掌握,特选取几何画板作为课件的制作软件。课件设计由浅入境,通过对旧知识点的回顾复习,再慢慢计入新知识点的学习,以问题为基本主导线,注重学生自主动手,自主学习能力,通过讨论,探讨问题渐渐深入课程学习,渐渐把握参数φ、ω、A对函数y=Asin(ωx+φ)的图象的影响。所以课件在设计中看重问题,情景的设计,以及如何让学生更容易,更直观地了解,掌握参数φ,ω,A对函数y=Asin(ωx+φ)的图象的变换规律。讲授新知识点后及时进行例题讲解,让学生查漏补缺,真正把知识学懂,学通,学透,本课件按照人教版要求,符合普遍学生的学习接受能力,通过提出问题观察图片,吸引学生的注意力,以带动学生思考问题。在传递新内容上,通过图文解说,形象表达学习内容,层次分明,能让学生容易理解、学习和掌握知识。学习完新知识后,进行一段小结,巩固学生记忆。最后布置几道与这节课内容相关的习题,是为了巩固本节课内容。使学生通过本节课,能基本掌握参数φ,ω,A对函数y=Asin(ωx+φ)的图象的变换规律。 五、思考题

分析课件所使用的媒体在课堂教学实践中的作用。 本课件主要应用了几何画板软件,应用几何画板的“形象、直观”的动态效果,能很好的演示课本上的内容和几何图片,容易让学生理解掌握新概念。本节课的一些思考及练习,能很好的培养学生的发散思维,达到举一反三的目的。几何画板的重要作用就是能准确地表达几何图像。本课件适用大部分地区高中学校的课堂教学。

Java课程设计实验报告及全部源码流程图

课程设计 一、实验目的 1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。 2. 使用本学期学习的Java SE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以Java SE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。 3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。 二、实验要求 1.问题描述准确、规范。 2.程序结构合理,调试数据准确、有代表性.。 3.界面布局整齐,人机交互方便。 4.输出结果正确。 5.正确撰写实验报告。 三、实验内容 编写一个GUI程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报

时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。 四、实验步骤 1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。 2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。 3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。 4. 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。 5.详细的上机实验步骤见任务分工及程序设计进度表。 五、实验结果 经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。 下面是程序运行效果截图: 日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):

Java程序设计实验报告分析

学生实验报告 (理工类) 课程名称: JAVA程序设计专业班级: 13电子信息工程(2)学生学号: 1305102056 学生姓名:许伟铭 所属院部:软件工程学院指导教师:王倩倩 20 15 ——20 16 学年第 2 学期 金陵科技学院教务处制

实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求 实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:JAVA编程基础实验学时: 4 同组学生姓名:————实验地点: 1514/A203 实验日期: 2016.04.08 实验成绩: 批改教师:王倩倩批改时间:

一、实验目的和要求 (1)熟练掌握JDK1.7及Eclipse Kepler Service Release 1(下简称Eclipse)编写调试Java应用程序及Java小程序的方法; (2)熟练掌握Java应用程序的结构; (3)了解Java语言的特点,基本语句、运算符及表达式的使用方法; (4)熟练掌握常见数据类型的使用; (5)熟练掌握if-else、switch、while、do-while、for、continue、break、return 语句的使用方法; (6)熟练掌握数组和字符串的使用; (7)调试程序要记录调试过程中出现的问题及解决办法; (8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验; (9)做完实验后给出本实验的实验报告。 二、实验仪器和设备 奔腾以上计算机,Windows 操作系统,装有JDK1.7和Eclipse软件。 三、实验过程 (1)分别使用JDK命令行和Eclipse编译运行Java应用程序。记录操作过程。 Java应用程序参考如下: 思考:1. 适当添加注释信息,通过javadoc生成注释文档; 2. 为主方法传递参数“Hello world”字符串,并输出; 3. 压缩生成".jar"文件。 (2)分别使用JDK命令行和Eclipse编译Java Applet,并建立HTML文档运行该Applet。 记录操作过程。 Java小应用程序参考如下:

软件工程JAVA课程设计报告

西安科技大学 软件工程课程设计报告 题目:画图板应用程序开发 班级 学号: 姓名: 2010年12月

目录 1 绪论 (3) 2 可行性研究报告 (3) 3 需求分析报告 (4) 4 总体设计报告 (7) 5 详细设计报告 (8) 6 系统实现报告 (12) 7软件测试报告 (32) 参考文献

1、绪论 1.1 目的和意义 用过微软Windows操作系统的人一定都对Windows自带的画图板非常熟悉了。同图像处理软件界的老大Photoshop比起来,它虽然不及Photoshop的功能强大,内容丰富,但是作为Windows一直以来都内带的附件程序,它具有小巧玲珑,简单实用等其他绘图软件所不具备的优点。同时它的风格也被许多其他的绘图软件所仿效。 作为一个软件工程专业的学生自己也想亲自动手编写一个属于自己的,简单实用的绘图程序。通过本次课程设计可以增加对整个流程的熟悉以及对程序组织结构和框架的理解,对以后开发和设计更大更复杂的程序无疑有更大的帮助。 任务 书写开发文档,分析和制定整个开发过程,然后开发一个自己的画图板应用程序。 2、可行性研究报告 进行可行性研究的方法 本应用程序可行性研究是通过对比windows自带的画板程序的方式进行的,对Windows 里面的画板进行分析研究,分析得出本应用软件应该实现的基本功能,并根据自己的能力进行了功能上的增加。 评价尺度 本软件在评价时应从以下几个方面进行分析: 开发时间应尽量短; 功能实现的代码应尽量少; 代码执行效率要高; 有较强的容错能力; 技术方面的可行性 系统现阶段的发展过程中,利用现有人力和物力是完全具备的能力开发出来的,作为阶段性产品,日后的发展空间大,实现方法逐步简单容易,所以画图板应用程序在技术上是完全可行的。 a.在当前的限制条件下,该程序的功能目标能达到; b.利用现有的技术,该程序的功能可以实现; c.由于能力的不足,现阶段的功能不够完美,还可以在日后完善; d.在规定的限期内,本程序能够完成; 法律方面的可行性 本程序不会在后台扫描用户的磁盘文件; 本程序为完全免费,没有任何盈利行为,而且仅在内部流通,不予推广,所以不涉及浸犯微软版权的行为,所以本软件完全合法。 软件服务条款要与中华人民共和国的法律解释相一致,一致同意服从高等法院所有管辖。如发生软件服务条款与中华人民共和国法律相抵触时,则这些条款将完全按法律规定重新解释,而其它条款则依旧保持对用户产生法律效力和影响。 经济可行行

Java基础实验报告-图形用户界面设计

南京工程学院 实验报告 课程名称 JAVA基础 实验项目名称图形用户界面设计 实验学生班级 实验学生姓名 学号 同组学生姓名 实验时间 实验地点 实验成绩评定 指导教师签字年月日

一、实验目的和要求 1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。 2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。 3.熟悉在组件上绘图的方法。 二、实验题目 用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的个人所得税。 三、实验方法与步骤(需求分析、算法设计思路、流程图等) 算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:

因此,我设计了以下核心算法 public void actionPerformed(ActionEvent e) { if(e.getSource()==button_b) { double wage=Double.parseDouble((String)text_wage.getText()); double tax = 0; if(wage<=3500) tax=0; if(wage>3500&&wage<=5000) tax=(wage-3500)*0.03; if(wage>5000&&wage<=8000) tax=(wage-3500)*0.1-105; if(wage>8000&&wage<=12500) tax=(wage-3500)*0.2-555; if(wage>12500&&wage<=38500)

使用“平移”“旋转”与“轨迹”功能绘制复杂几何图形

几何画板实验报告:使用“平移”“旋转”与“轨迹”功能绘制复 杂几何图形 一、实验目的 掌握“平移”“旋转”与“轨迹”功能及其应用,能熟练将前两者结合绘制复杂图形。 二、实验内容 题目1、绘制正五边形并设置控制按钮使其绕中心旋转180度。 步骤:1、先绘制正五边形。 (1)、任意绘制一条线段,选择旋转72度,连续旋转5次(图1) (2)、连接端点,构成正五边形并得出中点O(图2) 图1 图2 2、【构造】一个圆E,【构造】圆上的半段弧GF,并【构造】弧上的一点D(图3) 图3 图4 3、设定角度DEF为标记角度,选中正五边形,点击【变换】,【旋转】,选择标记角度并以中心O为旋转中心。(图4) 4、选中点G,E选择【编辑】,【操作类按钮】,【移动】命令,得到名为“从D→G移动”的按钮,同理得名为“从D→F移动”的按钮.图5为旋转180度的图像和两个按钮。

图5 题目2、作出圆柱及过其棱上一点且与底面平行的截面。并设置截面的平行移动。 步骤:1、作出一个同心圆A,过A作水平线,在大圆上任取一点E作水平线的垂线EF,连接AE与小圆交于点G,过点G作EF的垂线,交于点H,以E为主动点,H为被动对象构造轨迹,一次选中点E和点H【构造】【轨迹】,即圆柱的底面。(图1) 图1 图2 2、将其余图形隐藏,只留下椭圆。过椭圆中点A作水平线交于G,过A点作AG的垂线AF,并标记AF向量;将G绕A点旋转180度到G’点,在椭圆上任取一点H,将H沿AF向量的方向平移到H’点,再以H为主动点,H’为被动对象构造轨迹,得到圆柱的上底面也是一个椭圆;同理将G与G’也平移上去,再连接棱,即得到圆柱;( 图2) 3、在棱G’C上任取一点N,标记G’N向量,把H按照J’N向量的方向平移到H’’点,同样以H为主动点,H’’为被动对象构造轨迹,得到截面;(图3)

JavaWeb课程设计实验报告

湖南科技大学计算机科学与工程学院 WEB编程课程设计报告 题目:网上购物商店 学号:1111111111 姓名: 1 指导老师: 1 完成时间:111111111

目录 一、设计内容 (3) 二、设计方法 (4) 1、网站的整体结构设计 (4) 2、网站设计的技术方案 (5) 3、网站的界面设计 (6) 三、实现方法 (8) 1、数据库的设计 (8) 2、网站具体的实现过程 (10) 开发环境: (10) 设计思路 (10) 四、心得体会 (11)

随着互联网时代的迅猛发展,人们的生活方式已经发生了翻天覆地的变化,传统的实体店购物方式已经不能满足人们的需求,传统购物方式购物不方便,非得出门才能购物,去到了实体店有不一定有自己满意的商品,有时候会浪费大量的时间和精力。 随着网络的全面覆盖,网上支付系统的逐步完善,物流业的快速兴起,网上购物已经成为了当今购物的潮流。 网上购物商店主要满足人们足不出户就能买到自己想要的物品的需要,同时也为商家省去了昂贵的门面租赁费用,而且商品还可以卖到全国各地,大大的扩大了客源又节省了成本。 网上购物商店主要有以下几个方面的功能: 顾客可以浏览整个网站的商品,可以再网站进行注册,注册之后可以登录并购买商品,同时也可以查看和修改自己的个人信息,为了安全的需求,还可以修改密码。 商家,也就是店主,管理员,可以管理网站所出售的所有商品,同时也可以对在网站进行注册的用户进行管理。 1、用户登录、注册功能 (1)注册功能:用户进入网站,如果有兴趣在该商店购买商品,那么用户就可以注册。 (2)登录功能。已经注册的用户可以登录,登录之后方可购买商品。 (3)查看、修改用户信息功能。 (4)修改密码,为了用户安全的需要,经常更换密码可以保证用户账户的安全。 2、购物功能 (1)物品浏览:顾客进入网站,就可以浏览网站的商品。 (2)商品购买:顾客注册自己的账户,并登录之后就可以在网站购买商品了。购买商品的步骤如下; a)添加商品到购物车 b)确定购买 3、商品管理:管理网站所出售的商品。 4、用户管理:管理员对在网站注册的用户进行管理。 5、订单管理:对用户的订单进行管理。

JAVA程序设计实验报告格式

《JA V A程序设计》实验报告 题目JAVA基础实战——Bank项目 专业及班级计算机科学与技术120?班 姓名________ ______ _____ __ _ 学号_________ __ _____ 指导教师_____ 孙艺珍____ __________ 日期____________2014年11月_____ __

一、实验目的 《Bank项目》以银行业务为背景,由8 组由浅入深的模块构成,通过实验,可以对面向对象的封装性、构造器、引用类型的成员变量、异构数组、继承、多态、方法的重载、方法的重写、包装类、单例模式、异常、集合等技术有更深刻的理解。 二、实验内容: 可以完成银行业务中的基本操作:添加客户,创建异构账户、储蓄卡业务(存钱、取钱)和信用卡业务(包括透支保护等)业务。 三、实验原理 该项目包含Bank、Customer、Account、SavingsAccount、CheckingAccount、OverdraftException、CustomerReport、TestBanking 等8 个类构成,Bank 和Customer、Customer 和Account(SavingsAccount、CheckingAccount)、CheckingAccount 和OverdraftException、CustomerReport 和Bank 及TestBanking 之间以方法参数、成员变量的方式建立引用、依赖关系。 (可以写一下实验过程的思路和采用的技术) 四、实验过程与结果 一些业务逻辑的流程图以及实现的结果 五、分析与讨论 对于实验结果的讨论,对于异常的分析,对于未来功能扩展的设想等等

相关主题
文本预览
相关文档 最新文档