JAVA课程设计报告材料

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

《Java面向对象程序设计》课程设计报告

(2013— 2014学年第一学期)

专业:软件服务

班级:二班

姓名:

学号:1207132208

指导教师:

成绩:

计算机与信息工程学院

2014 年 1 月17 日

目录

目的 (1)

条状图 (1)

虐待鼠标 (5)

挂钟 (8)

绘图程序 (13)

目的

本课程是软件工程、信息技术外包专业所开设的一门重要实践课程,主要要求学生掌握Java语言和面向对象在实践中的应用。本课程设计的目的是使学生在理论学习的基础上,动手编写程序,通过应用所学习的知识,来解决一些实际的问题。在此基础上,真正理解和掌握Java面向对象程序设计的相关理论,具备程序设计的能力。

条状图

一、设计内容

设计实现一个应用程序,创建一个条状图,用于查看一组JA V A成绩的分布情况。程序初始化一组0-100的整数,根据整数值进行分类,通过调用fillRect 方法绘图。

二、方案设计与论证

1.随机产生10个整数,范围在0到100之间。

2.将这十个数分5种水平累加。累加的数值大小的十倍即为条状图的长度。

3.调用fillRect方法绘图。

三、程序运行结果(截图)

四、心得体会

1.在规定条状图大小位置较麻烦。

2.在BarChart类中一直出现不匹配的问题。解决方法:将for循环移入paintComponent()方法中。

3. 为了代码的严谨性,在BarChart类中增添了构造方法,在构造方法中初始化了背景色和面板大小,规定了条状图的大小。

五、参考资料与致谢

参考Java书本4.6图形对象中的例题4.5的格式。

六、源程序

1.Bar.java

import javax.swing.JFrame;

public class Bar

{

//-----------------------------------------------------------------// Creates the main program frame.

//-----------------------------------------------------------------public static void main (String[] args)

{

JFrame frame = new JFrame ("Bar Chart");

frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

BarChart panel = new BarChart();

frame.getContentPane().add(panel);

frame.pack();

frame.setVisible(true);

}

}

2.BarChart.java

import javax.swing.JPanel;

import java.awt.*;

import java.util.Random;

public class BarChart extends JPanel

{

Random generator = new Random();

int score;

int l1 ;

i nt l2 ;

i nt l3 ;

i nt l4 ;

i nt l5 ;

public BarChart()

{

setBackground (Color.cyan);

setPreferredSize (new Dimension(400, 300)); }

public void paintComponent (Graphics page)

{

super.paintComponent(page);

for (int i = 0 ; i <10 ; i++)

{

score = generator.nextInt(101);

if(score>= 91 && score<=100)

l1++;

if(score>= 81 && score<=90)

l2++;

if(score>= 71 && score<=80)

l3++;

if(score>= 60 && score<=70)

l4++;

if(score>= 0 && score<=59)

l5++;

}

page.setColor(Color.lightGray);

page.fillRect(150,50,155,110);

page.setColor(Color.black);

page.drawLine(180, 50, 180, 160);

page.drawLine(210, 50, 210, 160);

page.drawLine(240, 50, 240, 160);

page.drawLine(270, 50, 270, 160);

page.drawString("0", 150, 170);

page.drawString("2", 180, 170);

page.drawString("4", 210, 170);

page.drawString("6", 240, 170);

page.drawString("8", 270, 170);

page.drawString("10", 300, 170);

page.setColor(Color.magenta);

page.fillRect(150,60,l1*10,10);

page.setColor(Color.magenta);

page.fillRect(150,80,l2*10,10);

page.setColor(Color.magenta);

page.fillRect(150,100,l3*10,10);

page.setColor(Color.magenta);

page.fillRect(150,120,l4*10,10);

page.setColor(Color.magenta);

page.fillRect(150,140,l5*10,10);

page.setColor(Color.black);

page.drawString("91到100", 100, 67);

page.drawString("81到90", 100, 87);

page.drawString("71到80", 100, 108);

page.drawString("60到70", 100, 130);

page.drawString("0到59", 100, 155);

}

}

相关文档
最新文档