书籍《java语言程序设计》实验报告_第1页
书籍《java语言程序设计》实验报告_第2页
书籍《java语言程序设计》实验报告_第3页
书籍《java语言程序设计》实验报告_第4页
书籍《java语言程序设计》实验报告_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.JAVA语言程序设计实 验 报 告 院 系: 信息科学与技术学院专 业: 计算机科学与技术 班级学号: 学生姓名: *;实 验 报 告院(系):信息学院 课程名称:JAVA语言程序设计 班级学号实验室专业姓名计算机号实验名称熟悉Java程序开发环境成绩评定所用软件JDK记事本或EditPlusJava IDE教师签名实验目的或要求1.熟悉安装和配置JDK开发环境2.熟悉安装和配置IDE开发工具3.掌握Java程序编辑编译和运行的过程实验步骤心得体会1.写出Java程序开发环境的安装配置一般步骤当前计算机系统安装路径:_ _当前计算机系统设置的环境变量:PATH _ _ CLASSPATH_

2、_2.用记事本输入如下程序并通过配置好的JDK环境,利用相关命令获取结果public class HelloJavapublic static void main(String args)System.out.println("Hello Java !");源文件名:_ _ _编译命令:_ _执行命令:_ _命令行输出结果:_ _ 实 验 报 告院(系):信息学院 课程名称:JAVA语言程序设计 班级学号实验室专业姓名计算机号实验名称Java基本编程成绩评定所用软件JDK记事本或EditPlusJava IDE教师签名实验目的或要求1.掌握Java程序设计语言的基本编程要素

3、2.熟悉并使用Java语言中的数据类型实验步骤心得体会1.程序为输出希腊字母表public class GreekAlphabet public static void main (String args ) int startPosition=0,endPosition=0;char cStart='',cEnd=''【代码1】 /cStart做int型转换据运算,并将结果赋值给startPosition【代码2】 /cEnd做int型转换运算,并将结果赋值给endPositionSystem.out.println("希腊字母''在

4、unicode表中的顺序位置:"+(int)c);System.out.println("希腊字母表:");for(int i=startPosition;i<=endPosition;i+)char c='0'【代码3】 /i做char型转换运算,并将结果赋值给cSystem.out.print(" "+c);if(i-startPosition+1)%10=0)System.out.println(""); 【代码1】: 【代码2】: 【代码3】: 2.程序为猜数字游戏import javax.sw

5、ing.JOptionPane;public class GuessNumber public static void main (String args ) System.out.println("给你一个1至100之间的整数,请猜测这个数");int realNumber=(int)(Math.random()*100)+1;int yourGuess=0;String str=JOptionPane.showInputDialog("输入您的猜测:"); yourGuess=Integer.parseInt(str); while(【代码1】) /

6、循环条件if(【代码2】) /条件代码str=JOptionPane.showInputDialog("猜大了,再输入你的猜测:");yourGuess=Integer.parseInt(str); else if(【代码3】) /条件代码str=JOptionPane.showInputDialog("猜小了,再输入你的猜测:");yourGuess=Integer.parseInt(str); System.out.println("猜对了!");【代码1】: 【代码2】: 【代码3】: 3.程序为数组及其排序import jav

7、a.util.*;public class ArrayAndSort public static void main(String args) int a=12,34,9,23,45,6,45,90,123,19,34;【代码1】/对数组a进行排序System.out.println(Arrays.toString(a);int number=45;int index=【代码2】/在数组a中二分查找numberif(index>=0)System.out.println(number+"和数组中索引为"+index+"的元素值相同"); elseS

8、ystem.out.println(number+"不与数组中任何元素值相同"); 【代码1】: 【代码2】: 4.编程求两个整数的最大公约数5.编程请打印出如下九九乘法表* | 1 2 3 4 5 6 7 8 9-|- 1 | 1 2 | 2 4 3 | 3 6 9 4 | 4 8 12 16 5 | 5 10 15 20 25 6 | 6 12 18 24 30 36 7 | 7 14 21 28 35 42 49 8 | 8 16 24 32 40 48 56 64 9 | 9 18 27 36 45 54 63 72 816.使用String的常用方法编程7.使用S

9、tringBuffer的常用方法编程8.使用Math的常用方法编程9.编程测试LinkedList框架类10.测试集合框架类TreeSet 实 验 报 告院(系):信息学院 课程名称:JAVA语言程序设计 班级学号实验室专业姓名计算机号实验名称面向对象编程成绩评定所用软件JDK记事本或EditPlusJava IDE教师签名实验目的或要求1 掌握面向对象编程基础思想2 按要求设计基于面向对象编程思想的程序实验步骤心得体会1.编程封装三角形梯形类class Trangle double sideA,sideB,sideC,area,length;boolean boo;public Trangl

10、e(double a,double b,double c) 【代码1】 /参数a,b,c分别赋值给sideA,sideB,sideCif(【代码2】) /a,b,c构成三角形的条件表达式【代码3】 /给boo赋值 else 【代码4】 /给boo赋值double getLength() 【代码5】 /方法体,要求计算出length的值并返回 public double getArea() if(boo) double p=(sideA+sideB+sideC)/2.0;area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC) ;return area;els

11、e System.out.println("不是一个三角形,不能计算面积");return 0; public void setABC(double a,double b,double c) 【代码6】 /参数a,b,c分别赋值给sideA,sideB,sideCif(【代码7】) /a,b,c构成三角形的条件表达式【代码8】 /给boo赋值else 【代码9】 /给boo赋值class Lader double above,bottom,height,area; Lader(double a,double b,double h) 【代码10】 /方法体,将参数a,b,c分

12、别赋值给above,bottom,heightdouble getArea()【代码11】 /方法体,要求计算出area返回public class AreaAndLength public static void main(String args) double length,area;Trangle trangle;Lader lader;【代码12】 /创建对象trangle【代码13】 /创建对象lader 【代码14】 / trangle调用方法返回周长并赋值给lengthSystem.out.println("三角形的周长:"+length); 【代码15】 /

13、 trangle调用方法返回面积并赋值给areaSystem.out.println("三角形的面积:"+area); 【代码16】 / lader调用方法返回面积并赋值给areaSystem.out.println("梯形的面积:"+area); 【代码17】 / trangle调用方法设置三个边,要求将三个边修改为12,34,1【代码18】 / trangle调用方法返回面积并赋值给areaSystem.out.println("三角形的面积:"+area); 【代码19】 / trangle调用方法返回周长并赋值给lengthS

14、ystem.out.println("三角形的周长:"+length);【代码1】: 【代码2】: 【代码3】: 【代码4】: 【代码5】: 【代码6】: 【代码7】: 【代码8】: 【代码9】: 【代码10】: 【代码11】: 【代码12】: 【代码13】: 【代码14】: 【代码15】: 【代码16】: 【代码17】: 【代码18】: 【代码19】: 2.编程测试访问控制权限3.编程举例使用superthis关键字4.编程举例使用final关键字5.代码填空class A【代码1】 /声明一个float型实例变量a【代码2】 /声明一个float型类变量b,即stati

15、c变量bvoid setA(float a) 【代码3】 /将参数a的值赋值给成员变量avoid setB(float b) 【代码4】 /将参数b的值赋值给成员变量bfloat getA() return a;float getB() return b;void inputA()System.out.println(a);static void inputB()System.out.println(b);public class Example public static void main(String args) 【代码5】 /通过类名操作类变量b,并赋值100【代码6】 /通过类名调用

16、方法inputB()A cat=new A();A dog=new A();【代码7】 /cat象调用方法setA(int a)将cat的成员a的值设置为200【代码8】 /cat调用方法setB(int b)将cat的成员b的值设置为400【代码9】 /dog象调用方法setA(int a)将dog的成员a的值设置为150【代码10】 /dog调用方法setB(int b)将dog的成员b的值设置为300【代码11】 /cat调用inputA() 【代码12】 /cat调用inputB() 【代码13】 /dog调用inputA() 【代码14】 /dog调用inputB() 【代码1】:

17、【代码2】: 【代码3】: 【代码4】: 【代码5】: 【代码6】: 【代码7】: 【代码8】: 【代码9】: 【代码10】: 【代码11】: 【代码12】: 【代码13】: 【代码14】: 6.代码填空interface ComputerWeight public double computeWeight();class Television implements ComputerWeight 【代码1】 /实现computeWeight()方法class Computer implements ComputerWeight 【代码2】 /实现computeWeight()方法 class

18、WashMachine implements ComputerWeight 【代码3】 /实现computeWeight()方法class Car ComputerWeight goods; double totalWeights=0; Car(ComputerWeight goods) this.goods=goods; public double getTotalWeights() totalWeights=0; 【代码4】 /计算totalWeights return totalWeights; public class Road public static void main(Stri

19、ng args) ComputerWeight goodsOne=new ComputerWeight50, goodsTwo=new ComputerWeight22 ; for(int i=0;i<goodsOne.length;i+) if(i%3=0) goodsOnei=new Television(); else if(i%3=1) goodsOnei=new Computer(); else if(i%3=2) goodsOnei=new WashMachine(); for(int i=0;i<goodsTwo.length;i+) if(i%3=0) goodsT

20、woi=new Television(); else if(i%3=1) goodsTwoi=new Computer(); else if(i%3=2) goodsTwoi=new WashMachine(); Car 大货车=new Car(goodsOne); System.out.println("大货车装载的货物重量:"+大货车.getTotalWeights(); Car 小货车=new Car(goodsTwo); System.out.println("小货车装载的货物重量:"+小货车.getTotalWeights(); 【代码1】:

21、【代码2】: 【代码3】: 【代码4】: 实 验 报 告院(系):信息学院 课程名称:JAVA语言程序设计 班级学号实验室专业姓名计算机号实验名称异常处理成绩评定所用软件JDK记事本或EditPlusJava IDE教师签名实验目的或要求1.理解掌握Java中的异常处理实验步骤心得体会1.代码填空Teacher.javapublic class Teacher int numberOne,numberTwo; String operator="" boolean right; public int giveNumberOne(int n) numberOne=(int)(M

22、ath.random()*n)+1; return numberOne; public int giveNumberTwo(int n) numberTwo=(int)(Math.random()*n)+1; return numberTwo; public String giveOperator() double d=Math.random(); if(d>=0.5) operator="+" else operator="-" return operator; public boolean getRight(int answer) if(ope

23、rator.equals("+") if(answer=numberOne+numberTwo) right=true; else right=false; else if(operator.equals("-") if(answer=numberOne-numberTwo) right=true; else right=false; return right; ComputerFrame.javaimport java.awt.*;import java.awt.event.*;public class ComputerFrame extends Fr

24、ame implements ActionListener TextField textOne,textTwo,textResult; Button getProblem,giveAnwser; Label operatorLabel,message; Teacher teacher; ComputerFrame(String s) super(s); teacher=new Teacher(); setLayout(new FlowLayout(); textOne= new TextField(10); textTwo= new TextField(10); textResult= new

25、 TextField(10); operatorLabel=new Label("+"); message=new Label("你还没有回答呢"); getProblem=new Button("获取题目"); giveAnwser=new Button("确认答案"); add(getProblem); add(textOne); add(operatorLabel); add(textTwo); add(new Label("="); add(textResult); add(giveAn

26、wser); add(message); textResult.requestFocus(); textOne.setEditable(false); textTwo.setEditable(false);getProblem.addActionListener(this); giveAnwser.addActionListener(this); textResult.addActionListener(this);setBounds(100,100,450,100); setVisible(true); validate();【代码1】/ 窗口添加windowClosing事件,以退出系统

27、public void actionPerformed(ActionEvent e) if(e.getSource()=getProblem) int number1=teacher.giveNumberOne(100); int number2=teacher.giveNumberTwo(100); String operator=teacher.givetOperator(); textOne.setText(""+number1); textTwo.setText(""+number2); operatorLabel.setText(operato

28、r); message.setText("请回答");textResult.setText(null); if(e.getSource()=giveAnwser) String answer=textResult.getText(); int result=Integer.parseInt(answer); 【代码2】/ 对parseInt方法进行相应的异常处理 if(teacher.getRight(result)=true) message.setText("你回答正确"); else message.setText("你回答错误"

29、;); textResult.requestFocus(); validate(); MainClass.javapublic class MainClasspublic static void main(String args) ComputerFrame frame; frame=new ComputerFrame(“算术测试”); 【代码1】: 【代码2】:实 验 报 告院(系):信息学院 课程名称:JAVA语言程序设计 班级学号实验室专业姓名计算机号实验名称综合应用成绩评定所用软件JDK记事本或EditPlusJava IDE教师签名实验目的或要求1.综合应用Java线程IO网络编程等

30、相关知识编程2.熟练掌握Java的线程处理实验步骤心得体会1.代码填空(统计英文单词)import java.io.*;import java.util.Vector;public class WordStatisticVector allWorsd,noSameWord; WordStatistic() allWorsd=new Vector(); noSameWord=new Vector(); public void wordStatistic(File file) try RandomAccessFile inOne=【代码1】/创建指向文件file的inOne 的对象 RandomA

31、ccessFile inTwo=【代码2】 /创建指向文件file的inTwo 的对象 long wordStarPostion=0,wordEndPostion=0; long length=inOne.length(); int flag=1; int c=-1; for(int k=0;k<=length;k+) c=【代码3】 / inOne调用read()方法 boolean boo=(c<='Z'&&c>='A')|(c<='z'&&c>='a'); if(

32、boo) if(flag=1) wordStarPostion=inOne.getFilePointer()-1; flag=0; else if(flag=0) if(c=-1) wordEndPostion=inOne.getFilePointer(); else wordEndPostion=inOne.getFilePointer()-1; 【代码4】/inTwo调用seek方法将读写位置移动到wordStarPostion byte cc=newbyte(int)wordEndPostion-(int)wordStarPostion; 【代码5】/inTwo调用readFully(b

33、yte a)方法,向a传递cc String word=new String(cc); allWorsd.add(word); if(!(noSameWord.contains(word) noSameWord.add(word); flag=1; inOne.close(); inTwo.close(); catch(Exception e) public Vector getAllWorsd() return allWorsd; public Vector getNoSameWord() return noSameWord; import java.awt.*;import java.aw

34、t.event.*;import java.util.Vector;import java.io.File;public class StatisticFrame extends Frame implements ActionListener WordStatistic statistic; TextArea showMessage; Button openFile; FileDialog openFileDialog; Vector allWord,noSameWord; public StatisticFrame() statistic=new WordStatistic(); showM

35、essage=new TextArea(); openFile=new Button("Open File"); openFile.addActionListener(this); add(openFile,BorderLayout.NORTH); add(showMessage,BorderLayout.CENTER); openFileDialog=new FileDialog(this,"打开文件话框",FileDialog.LOAD); allWord=new Vector(); noSameWord=new Vector(); setSize(

36、350,300); setVisible(true); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); validate(); public void actionPerformed(ActionEvent e) noSameWord.clear(); allWord.clear(); showMessage.setText(null); openFileDialog.setVisible(true); String fileName=openFi

37、leDialog.getFile(); if(fileName!=null) statistic.wordStatistic(new File(fileName); allWord=statistic.getAllWorsd(); noSameWord=statistic.getNoSameWord(); showMessage.append("n"+fileName+"中有"+allWord.size()+"个英文单词"); showMessage.append("n其中有"+noSameWord.size()+

38、"个互不相同英文单词"); showMessage.append("n按使用频率排列:n"); int count=new intnoSameWord.size(); for(int i=0;i<noSameWord.size();i+) String s1=(String)noSameWord.elementAt(i); for(int j=0;j<allWord.size();j+) String s2=(String)allWord.elementAt(j); if(s1.equals(s2) counti+; for(int m=0;

39、m<noSameWord.size();m+) for(int n=m+1;n<noSameWord.size();n+) if(countn>countm) String temp=(String)noSameWord.elementAt(m); noSameWord.setElementAt(String)noSameWord.elementAt(n),m); noSameWord.setElementAt(temp,n); int t=countm; countm=countn; countn=t; for(int m=0;m<noSameWord.size();

40、m+) showMessage.append("n"+(String)noSameWord.elementAt(m)+ ":"+countm+"/"+allWord.size()+ "="+(1.0*countm)/allWord.size(); public class StatisticMainClass public static void main(String args) new StatisticFrame(); 【代码1】: 【代码2】: 【代码3】: 【代码4】: 【代码5】: 2.代码填空impo

41、rt java.awt.*;import java.awt.event.*;public class MoveButton extends Frame implements Runnable,ActionListener 【代码1】/用Thread类声明first,second两个线程对象 Button redButton,greenButton,startButton; int distance=10; MoveButton() 【代码2】 /创建first线程,当前窗口做为该线程的目标对象 【代码3】 /创建first线程,当前窗口做为该线程的目标对象 redButton=new Butt

42、on(); greenButton=new Button(); redButton.setBackground(Color.red); greenButton.setBackground(Color.green); startButton=new Button("start"); startButton.addActionListener(this); setLayout(null); add(redButton); redButton.setBounds(10,60,15,15); add(greenButton); greenButton.setBounds(100,6

43、0,15,15); add(startButton); startButton.setBounds(10,100,30,30); setBounds(0,0,300,200); setVisible(true); validate(); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); public void actionPerformed(ActionEvent e) try first.start(); second.start(); catch(Exception exp) public void run() while(true) if(【代码4】) /判断当前占有CPU资源的线程是否是first moveComponent(re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论