《Java语言程序设计》软件实验指导书.doc

上传人:xin****828 文档编号:6665204 上传时间:2020-03-01 格式:DOC 页数:17 大小:201.50KB
返回 下载 相关 举报
《Java语言程序设计》软件实验指导书.doc_第1页
第1页 / 共17页
《Java语言程序设计》软件实验指导书.doc_第2页
第2页 / 共17页
《Java语言程序设计》软件实验指导书.doc_第3页
第3页 / 共17页
点击查看更多>>
资源描述
本科实验报告课程名称: java程序设计 实验地点: 实验室110 专业班级:物联网1401 学号: 2014002010 学生姓名: 李涛宇 指导教师: 李君蝉 实验成绩: 2016年 6 月 20 日目 录实验1 Java语言基础3实验2 数组和字符串编程4实验3 Java面向对象程序设计5实验4 Java异常处理7实验5 多线程编程12实验6 图形用户界面编程13实验7 输入与输出15实验1 Java语言基础1.实验目的(1) 通过实验,掌握Java语言程序设计的基本方法。(2) 学会Java语言中标示符的命名、运算符和表达式的应用。(3) 熟练地掌握Java程序流程控制语句的应用。2.实验内容 “水仙花数”是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。3.实验步骤及结果(1) 实验过程中实验步骤及其结果。 package 实验测试;public class Flower public static void main(String args) / TODO Auto-generated method stubint a,b,c;for(a=1;a10;a+)for(b=0;b10;b+)for(c=0;c + name + 成功!);elseSystem.out.println(该商品不存在);public static void Add() System.out.println(*增加商品*);System.out.print(商品名称:);name=Getline();System.out.print(商品价格:);price=Float.parseFloat(Getline();System.out.print(商品数量:);num=Integer.parseInt(Getline();System.out.print(商品产地:);producer=Getline();if (market.Add(name, price, num,producer) System.out.println(增加商品- + name + 成功!); else System.out.println(存在相同商品,增加失败!);public static String Getline() Scanner scan = new Scanner(System.in);String str = scan.nextLine();return str.trim();2)public class Goods private String name;private float price;private int num;private String producer;public Goods(String name,float price,int num,String producer)this.name=name;this.price=price;this.num=num;this.producer=producer;public String GetName()return this.name;public float GetPrice()return this.price;public int GetNum()return num;public String GetProducer()return this.producer;public void Showgoods()System.out.print(商品名称: +name+ 商品价格:+price+ 商品数量:+num+ 商品产地:+producer+n);3)import java.util.Vector;public class Supermarkt static Vector listgoods=new Vector();public void ShowMenu() System.out.println(-);System.out.println(1.增加商品 );System.out.println(2.删除商品);System.out.println(3.显示商品 );System.out.println(4.查询商品 );System.out.println(5.退出系统 );System.out.println(-);return;/增加商品public boolean Add(String name,float price, int num,String producer)int count=listgoods.size();for(int i=0;icount;i+)if(listgoods.get(i).GetName().equals(name)return false;Goods newgoods =new Goods(name,price,num,producer);listgoods.add(newgoods);return true;/删除商品public boolean Del(String name)int count=listgoods.size();for(int i=0;icount;i+)if(listgoods.get(i).GetName().equals(name)listgoods.remove(i);return true;return false;/显示商品public boolean Showgoods()int count=listgoods.size();if(count=0)return false;else for(int i=0;icount;i+)listgoods.get(i).Showgoods();return true;/查询商品public boolean Query(String name)int count=listgoods.size();for(int i=0;icount;i+)if(listgoods.get(i).GetName().equals(name)listgoods.get(i).Showgoods();return true;return false;(2) 实验体会。Java语言由于异常处理的存在,使得java可以对程序运行中出现的不合法数据或事件有处理能力,针对不同的情况,可以使用不同的try catch进行分别处理。Java程序更加具有强壮性。实验5 多线程编程1.实验目的(1) 现成的概念、线程的生命周期。(2) 多线程的编程:扩展Thread类与使用Runnable接口。(3) 使用多线程机制实现动画2.实验内容(1) 创建简单的程序ThreeThread.java,该程序将创建三个线程,每个线程应当显示它所运行的时间(可以考虑使用Date类或Calendar类)。3.实验步骤及结果(1) 实验过程中实验步骤及其结果 import java.text.SimpleDateFormat;import java.util.*;public class Hi public static void main(String args)SimpleDateFormat s2 = new SimpleDateFormat(yyyy年MM月dd日EEEEE时mm分ss秒);new HiH(s2,jerry).start();new HiH(s2,liming).start();new HiH(s2,merry).start();class HiH extends Threadprivate SimpleDateFormat a;private String s1;public HiH(SimpleDateFormat a,String str)this.a = a;s1 = str;public void run()synchronized(this.a)System.out.println(+s1);System.out.println(this.a.format(new Date();trysleep(int)(Math.random()*1000);catch(InterruptedException e)运行结果(2) 实验体会本实验通过sleep与start控制线程在三个线程之间灵活切换,使得java程序利用率更加提高。在就绪,执行,挂起之间切换。实验6 图形用户界面编程1.实验目的 掌握文本组件、按钮和单、复选按钮组件的使用;掌握列表的使用,鼠标、键盘事件的处理;掌握布局控制的方法。2.实验内容(1) 试设计一窗口,内含一个按钮。开始运行时,按钮显示“Click Me”字样,当按钮按下时,按钮显示为“Click Me Again”字样,再按一次,则按钮显示“Click Me”字样,依次循环。3.实验步骤及结果(1) 实验过程中实验步骤及其结果 package 图形界面;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;public class GUI public static void main(String args) / TODO Auto-generated method stubJFrame frm=new JFrame();frm.setLayout(null);frm.setVisible(true);frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frm.setBounds(500,250,250,150);JButton btn=new JButton(Click Me);frm.add(btn);btn.setBounds(120,60,120,30);ButtonListener bln=new ButtonListener(btn);btn.addMouseListener(bln);class ButtonListener implements MouseListenerboolean t=true;JButton btn;public ButtonListener(JButton btn)this.btn=btn;Overridepublic void mouseClicked(MouseEvent arg0) / TODO Auto-generated method stubt=!t;Overridepublic void mouseEntered(MouseEvent arg0) / TODO Auto-generated method stubOverridepublic void mouseExited(MouseEvent arg0) / TODO Auto-generated method stubOverridepublic void mousePressed(MouseEvent arg0) / TODO Auto-generated method stubif(t) btn.setText(Click Me Again);else btn.setText(Click Me);Overridepublic void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stub(2) 实验体会 图形用户界面使得java程序更具有交互性。在本实验中,通过事件监听器的注册,可以对不同的鼠标指令多态地进行不同反应。编程中由于对button组建的函数不太熟悉,导致实现接口时出现问题。实验7 输入与输出1.实验目的(1) 掌握Java两种基本输入/输出流类的使用。(2) 掌握Java文件类型的使用。(3) 掌握文件的输入、输出方法。2.实验内容。(1) 编写程序,利用Java字符流文件输入/输出类,实现将源程序复制到另一个文件中。(2)编写一个程序,比较两个文件的内容是否相同。3.实验步骤及结果(1) 实验过程中实验步骤及其结果 package 输入输出;import java.awt.*;import java.awt.event.*;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;public class IOStream public static void main(String args) throws IOException / TODO Auto-generated method stubBufferedInputStream bis = null;BufferedOutputStream bos = null;bis = new BufferedInputStream(new FileInputStream(new File(C:UsersAdministratorDesktop输入输出src输入输出IOStream.java);bos = new BufferedOutputStream(new FileOutputStream(new File(C:UsersAdministratorDesktop.outfile.txt);int i = 0;while(i = bis.read() != -1) bos.write(i);bis.close();bos.close();(二)文本内容比较package 比较;import java.io.FileReader;import java.io.IOException;public class Compare public static void main(String args)throws IOException / TODO Auto-generated method stubint str = 0;int str1 = 0; FileReader fr = null; FileReader fw = null;fr = new FileReader(C:UsersAdministratorDesktopinfile.txt);fw = new FileReader(C:UsersAdministratorDesktopoutfile.txt);if(str=fr.read()!= (str1=fw.read()System.out.println(Different);elseSystem.out.println(文件内容一样);(2) 实验体会。 试验中进行三个流类的套结,从而实现对文件中字符的读写输入。让我在实验中困惑的是ecllips的相对路径好像无法识别,在文件路径打开时花了很大功夫。
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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