欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    最新JAVA课程设计报告.doc

    • 资源ID:33833095       资源大小:281.50KB        全文页数:24页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    最新JAVA课程设计报告.doc

    精品资料JAVA课程设计报告.Java面向对象程序设计课程设计报告(2013 2014学年 第 一 学期)专 业: 软件服务 班 级: 二班 姓 名: 学 号: 1207132208 指导教师: 成 绩: 计算机与信息工程学院2014年1月17日 目录目的本课程是软件工程、信息技术外包专业所开设的一门重要实践课程,主要要求学生掌握Java语言和面向对象在实践中的应用。本课程设计的目的是使学生在理论学习的基础上,动手编写程序,通过应用所学习的知识,来解决一些实际的问题。在此基础上,真正理解和掌握Java面向对象程序设计的相关理论,具备程序设计的能力。条状图一、设计内容设计实现一个应用程序,创建一个条状图,用于查看一组JAVA成绩的分布情况。程序初始化一组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.javaimport 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.javaimport javax.swing.JPanel;import java.awt.*;import java.util.Random;public class BarChart extends JPanel Random generator = new Random();int score;int l1 ; int l2 ; int l3 ; int l4 ; int 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);虐待鼠标一、设计内容鼠标是一个易损器件,损坏的原因往往是因为过量的点击。请参考第四章的例题4.10设计一款程序测试在一分钟内你能点击鼠标多少次,找你的同学来试试看看谁的食指更灵活。二、方案设计与论证1.建一个界面(用框架)2.建一个面板介入到框架中 面板中添加按钮,标签(显示时间和点击鼠标次数) 面板中添加监听器(监听点击鼠标次数和计时)提示:时间差计算方法Calendar begin=Calendar.getInstance(); /获取起点时间Calendar end = Calendar.getInstance(); /获取终点时间long between=end.getTimeInMillis() - begin.getTimeInMillis()/1000; /除以1000是为了将毫秒转换成秒三、程序运行结果(截图)四、心得体会1.本题需要两部分任务,倒计时Timber的调用,和记录点击鼠标的次数。2.刚开始对题目所要用到的方法不太清楚,结合书本上的内容和上网查阅相关资料获得。3.原本新建一个类,用来进行计时问题,但是程序出现错误。因为对API不是很了解,上网查阅了API关于Calendar类及getInstance()方法和getTimeInMillis()方法的用法,运用监听器方法实现倒计时。 五、参考资料与致谢参考java书本上第四章的例题4.10,按钮点击次数。网上获取计时器 Calendar类的用法。六、源程序 1. Push.java/*/ PushCounter.java Authors: Lewis/Loftus/ Demonstrates a graphical user interface and an event listener./*import javax.swing.JFrame;public class Push /- / Creates the main program frame. /- public static void main (String args) JFrame frame = new JFrame ("Push Counter"); frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(new PushPanel(); frame.pack(); frame.setVisible(true); 2. PushPanel.java/*/ PushCounterPanel.java Authors: Lewis/Loftus/ Demonstrates a graphical user interface and an event listener./*import java.awt.*;import java.awt.event.*;import javax.swing.*;public class PushPanel extends JPanel private int count; private JButton push; private JLabel label; private JLabel label1; private long between; java.util.Calendar begin=java.util.Calendar.getInstance(); /获取起点时间 /- / Constructor: Sets up the GUI. /- public PushPanel () count = 0; push = new JButton ("Push!"); push.addActionListener (new ButtonListener(); label = new JLabel ("Pushes: " + count); label1 = new JLabel ("Times: " + between); add (push); add (label); add (label1); setPreferredSize (new Dimension(300, 50); setBackground (Color.cyan); /* / Represents a listener for button push (action) events. /* private class ButtonListener implements ActionListener /- / Updates the counter and label when the button is pushed. /- public void actionPerformed (ActionEvent event) java.util.Calendar end=java.util.Calendar.getInstance(); /获取终点时间 between=(end.getTimeInMillis() - begin.getTimeInMillis()/1000; /除以1000是为了将毫秒转换成秒 if(event.getSource() = push )/获取点击鼠标的信息 count+; label.setText("Pushes: " + count); if (between <= 60)/时间设定为1分钟即60秒 between +; label1.setText("Times: " + between); else System.out.println("Time is over!"); 挂钟一、设计内容设计一款如下的挂钟提示:Calendar calendar=Calendar.getInstance(); /获取当前时间int year=calendar.get(Calendar.YEAR); /获取年int month=calendar.get(Calendar.MONTH); /获取月int day=calendar.get(Calendar.DATE); /获取日int weekDay=calendar.get(Calendar.DAY_OF_WEEK);int am_pm=calendar.get(Calendar.AM_PM);int hour=calendar.get(Calendar.HOUR_OF_DAY); /获取小时int minute=calendar.get(Calendar.MINUTE); /获取分钟int second=calendar.get(Calendar.SECOND); /获取秒二、方案设计与论证运用定时器Timer设计运行时钟运用Graphics绘制时钟图像及表针三、程序运行结果(截图)四、心得体会1.起初不懂画表针如何得到坐标,查阅相关资料得代码如下:sx=195+95*Math.sin(6*second*Math.PI)/180); sy=195-95*Math.cos(6*second*Math.PI)/180); mx=195+80*Math.sin(6*minute*Math.PI)/180+(6*second*Math.PI)/180/60); my=195-80*Math.cos(6*minute*Math.PI)/180+(6*second*Math.PI)/180/60);2.画表针方法如下:g.setColor(Color.black); g.drawLine(195, 195, (int)sx, (int)sy); g.drawLine(195, 195, (int)mx, (int)my); g.drawLine(195, 195, (int)hx, (int)hy);五、参考资料与致谢参考Java书上9.8定时器类的例题9.15六、源程序1.clock.javaimport java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.JFrame;public class clock public static void main(String args)JFrame frame=new JFrame("clock");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.getContentPane().add(new clockPanel();frame.pack();frame.setVisible(true);2.clockPanel.javaimport java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.Calendar;public class clockPanel extends JPanelprivate final double PI=3.14;private int DELAY=1000;private Timer timer;private Calendar calendar;private double sx,sy,mx,my,hx,hy;private int second,minute,hour;private int s;public clockPanel()timer=new Timer(DELAY,new clockListener();setPreferredSize(new Dimension(300,300);setBackground(Color.white);timer.start();public void paint(Graphics g)super.paint(g); g.setColor(Color.gray); g.fillOval(75, 75, 240, 240); g.setColor(Color.yellow); g.fillOval(100, 100, 190, 190); g.setColor(Color.black); g.drawOval(75, 75, 240, 240); g.setColor(Color.black); g.drawOval(100, 100, 190, 190); g.setColor(Color.black); g.fillOval(190, 190, 10, 10); calendar=Calendar.getInstance(); second=calendar.get(Calendar.SECOND); minute=calendar.get(Calendar.MINUTE); hour=calendar.get(Calendar.HOUR_OF_DAY); g.setColor(Color.black); g.setFont(new Font("TimesRoman",Font.PLAIN,20); for(int i=1;i<13;i+) int X=(int)(195+100*Math.sin(6*i*5*Math.PI)/180); int Y=(int)(195-100*Math.cos(6*i*5*Math.PI)/180); if(i<4) g.drawString(""+i, X-2,Y+3); if(i<7&&i>=4)g.drawString(""+i, X-6,Y+16); if(i>=7&&i<10)g.drawString(""+i, X-10,Y+12); if(i>=10&&i<=12)g.drawString(""+i, X-17,Y+3); for(int a=1;a<13;a+) int X=(int)(195+95*Math.sin(6*a*5*Math.PI)/180); int Y=(int)(195-95*Math.cos(6*a*5*Math.PI)/180); g.setColor(Color.black); g.fillOval(X-2,Y-2,4,4); g.setColor(Color.black); g.drawLine(195, 195, (int)sx, (int)sy); g.setColor(Color.black); g.drawLine(195, 195, (int)mx, (int)my); g.setColor(Color.black); g.drawLine(195, 195, (int)hx, (int)hy);public class clockListener implements ActionListenerpublic void actionPerformed(ActionEvent event) sx=195+95*Math.sin(6*second*Math.PI)/180); sy=195-95*Math.cos(6*second*Math.PI)/180); mx=195+80*Math.sin(6*minute*Math.PI)/180+(6*second*Math.PI)/180/60); my=195-80*Math.cos(6*minute*Math.PI)/180+(6*second*Math.PI)/180/60); if(hour<=12) hx=195+65*Math.sin(30*hour*Math.PI)/180+(6*minute*Math.PI)/180/12); hy=195-65*Math.cos(30*hour*Math.PI)/180+(6*minute*Math.PI)/180/12); if(hour>12) hx=195+65*Math.sin(30*(hour-12)*Math.PI)/180+(6*minute*Math.PI)/180/12); hy=195-65*Math.cos(30*(hour-12)*Math.PI)/180+(6*minute*Math.PI)/180/12); repaint(); 绘图程序一、设计内容编写Java Application程序,使它在GUI界面中通过响应功能按钮的点击事件绘制各种简单的几何图形(矩形、圆形、扇形、多边形和他们的填充效果),并且能够通过接收传递参数控制图形的绘制。二、方案设计与论证1.定义一个Application类来设计一个框架。2.定义4个类分别为Square,Circle,Fan,Polygon以按键的形式在Application类中显示。3.定义Draw类,Square,Circle,Fan,Polygon这四个类通过参数调用Draw类画图。三、程序运行结果(截图)五、参考资料与致谢参考书本4.6图形对象例题4.7 4.8 4.9,7.11布局管理器例题7.18。六、源程序1.Application.javaimport javax.swing.*;public class Application public static void main (String args) JFrame frame = new JFrame ("Application"); frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); JTabbedPane tp = new JTabbedPane(); tp.addTab ("square", new Square(); tp.addTab ("circle", new Circle(); tp.addTab ("fan", new Fan(); tp.addTab ("polygon", new Polygon(); frame.getContentPane().add(tp); frame.pack(); frame.setVisible(true); 2.Square.javaimport java.awt.*;import javax.swing.*;public class Square extends JPanelDraw square; /- / Sets up this panel with two labels. /- public Square() setBackground (Color.cyan); setPreferredSize (new Dimension(300, 200); setBackground (Color.black); square = new Draw(); square.square(45,50,60,30,Color.blue); public void paintComponent (Graphics page) super.paintComponent(page); square.drawSquare(page); 3.Circle.javaimport java.awt.*;import javax.swing.*;public class Circle extends JPanel Draw circle; /- / Sets up this panel with some buttons to show how flow layout / affects their position. /- public Circle () setBackground (Color.cyan); setPreferredSize (new Dimension(300, 200); setBackground (Color.black); circle = new Draw(); circle.circle(45,50,60,60,Color.pink); public void paintComponent (Graphics page) super.paintComponent(page); circle.drawCircle(page); 4.Fan.javaimport java.awt.*;import javax.swing.*;public class Fan extends JPanel Draw fan;/- / Sets up this panel with a button in each area of a border / layout to show how it affects their position, shape, and size. /- public Fan() setBackground (Color.cyan); setPreferredSize (new Dimension(300, 200); setBackground (Color.black); fan = new Draw(); fan.fan(45,50,60,60,0,180,Color.green); public void paintComponent (Graphics page) super.paintComponent(page); fan.drawFan(page); 5.Polygon.javaimport java.awt.*;import javax.swing.*;public class Polygon extends JPanel Draw polygon; /- / Sets up this panel with a button in each area of a border / layout to show how it affects their position, shape, and size. /- public Polygon() s

    注意事项

    本文(最新JAVA课程设计报告.doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开