欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    Java程序设计实验指导书.doc

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

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

    Java程序设计实验指导书.doc

    优质文本实验一 根本数据类型与控制语句一、实验目的及要求 1. 安装并配置Java运行开发环境;2. 掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;3. 学习同时编译多个Java源文件;4. 掌握char型数据和int型数据之间的相互转换,同时了解unicode字符表;5. 掌握使用ifelse分支和while循环语句解决问题。二、实验学时6学时三、实验任务1安装JDK,设置环境变量PATH和CLASSPATH。1下载JDK为了建立基于SDK的java运行环境,需要先下载sun的免费SDK软件包。在浏览器中输入进入sun公司官方网站页面。在页面右边“Popular Downloads栏中可看到最新版的JDK软件包JDK1.6,并下载。2安装JDK运行下载的“jdk-6u1-windows-i586-p.exe软件包,在安装过程中可以设置安装路径及选择组件,默认的组件选择是全部安装,安装成功后,其中bin文件夹中包含编译器javac.exe、解释器java.exe、Applet查看器appletviewer.exe等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,demo文件夹中包含开源代码程序实例。3JDK中主要文件夹和文件安装成功后,d:javajdk1.6中bin文件夹中包含编译器javac.exe、解释器java.exe、Applet查看器appletviewer.exe等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,sample文件夹包含开源代码程序实例,src压缩文件中包含类库开源代码。设置环境变量JDK中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。以Windows XP为例说明设置过程。右击桌面“我的电脑图标,选择“属性菜单在“高级选项卡中单击“环境变量按钮,将出现“环境变量设置界面在“系统变量框中点击“新建按钮,在出现的“编辑系统变量对话框中,在“变量名栏的文本框内输入“JavaHome,在变量值栏的文本框内输入“d:javajdk1.6”即jdk安装的主目录在“系统变量框中选择“path,然后单击“编辑按钮,在出现的“编辑系统变量对话框中,在“变量值栏的命令后添加“;%JavaHome%bin。在“系统变量框中,单击“新建按钮,在出现的“新建系统变量的对话框中,在“变量名栏中输入“classpath,在变量值栏输入“;%JavaHome%lib。其中“表示当前目录。设置完成后,单击“开始>“所有程序>“附件>“命令提示符翻开DOS窗口,在命令行提示符输入“java或“javac回车后,如果出现其用法参数提示信息,那么安装正确。2安装Eclipse,并熟悉如何使用。将下载的ZIP包解压缩到D盘,双击D:eclipseeclipse.exe来启动Eclipse。第一次启动时会弹出一个选择工作空间的对话框,输入“D:workspace,单击“OK,开始运行Eclipse。3. 一个简单的应用程序² 实验要求:编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很快乐学习Java和“We are students。² 程序模板: Hello.javapublic class Hello public static void main (String args ) 【代码1】 /命令行窗口输出"你好,很快乐学习Java" A a=new A(); a.fA(); class A void fA() 【代码2】 /命令行窗口输出"We are students" ² 实验后的练习:1 编译器怎样提示丧失大括号的错误?2 编译器怎样提示语句丧失分号的错误?3 编译器怎样提示将System写成system这一错误?4 编译器怎样提示将String写成string这一错误?4联合编译² 实验要求:编写4个源文件:MainClass.java、A.java、B.java和C.java,每个源文件只有一个类,MainClass.java是一个应用程序含有main方法,使用了A、B和C类。将4个源文件保存到同一目录中,例如:C:100,然后编译MainClass.java。² 程序模板:模板1:MainClass.javapublic class MainClass public static void main (String args ) 【代码1】 /命令行窗口输出"你好,只需编译我" A a=new A(); a.fA(); B b=new B(); b.fB(); 模板2 :A.javapublic class A void fA() 【代码2】 /命令行窗口输出"I am A" 模板3 :B.javapublic class B void fB() 【代码3】 /命令行窗口输出"I am B" 模板4 :C.javapublic class C void fC() 【代码4】 /命令行窗口输出"I am C" ² 实验后的练习:1 将Hello.java编译通过后,修改A.java源文件中的代码,在命令行窗口输出“我是A类。要求每次修改A.java源文件后,单独编译A.java,然后直接运行应用程序MainClass。5输出希腊字母表。² 实验要求:编写一个Java应用程序,该程序在命令行窗口输出希腊字母表。² 程序模板:GreekAlphabet.javapublic class GreekAlphabet public static void main (String args ) int startPosition=0,endPosition=0; char cStart='',cEnd='' 【代码1】 /cStart做int型转换据运算,并将结果赋值给startPosition 【代码2】 /cEnd做int型转换运算,并将结果赋值给endPosition System.out.println("希腊字母''在unicode表中的顺序位置:"+(int)cStart); System.out.println("希腊字母表:"); for(int i=startPosition;i<=endPosition;i+) char c='0' 【代码3】 /i做char型转换运算,并将结果赋值给c System.out.print(" "+c);if(i-startPosition+1)%10=0) System.out.println(""); ² 实验后的练习:1 将一个double型数据直接赋值给float型变量,程序编译时提示怎样的错误?2 在应用程序的main方法中增加语句:float x=0.618;程序能编译通过么? 3 在应用程序的main方法中增加语句:byte y=128;程序能编译通过么? 4 在应用程序的main方法中增加语句:int z=(byte)128;程序输出变量z的值是多少? 6猜数字游戏。² 实验要求:编写一个Java应用程序,实现以下功能:1) 程序随机分配给客户一个1100之间的整数;2) 用户在输入对话框中输入自己的猜想;3) 程序返回提示信息,提示信息分别是:“猜大了、“猜小了和“猜对了;4) 用户可根据提示信息再次输入猜想,直到提示信息是“猜对了。² 程序模板:GuessNumber.javaimport javax.swing.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】) /循环条件 if(【代码2】) /条件代码 str=JOptionPane.showInputDialog("猜大了,再输入你的猜想:"); yourGuess=Integer.parseInt(str); else if(【代码3】) /条件代码 str=JOptionPane.showInputDialog("猜小了,再输入你的猜想:"); yourGuess=Integer.parseInt(str); System.out.println("猜对了!"); ² 实验后的练习:1. 用“yourGuess>realNumber替换【代码1】,可以么?2. 语句:“System.out.println(“猜对了!);为何要放在while循环语句之后?放在while语句的循环体中合理吗?【结果】将本次上机实验结果按照以上内容依次填写实验目标、过程、结果。【考前须知】实验报告要求每人提交一份,使用专门的报告纸,内容写全,包括实验名称、班级、姓名、试验日期。7.编写一个java程序,用穷举法找出2-50之间的素数。8.编写一个java程序,计算1!+2!+10!。实验二 类与对象一、实验目的及要求1. 使用类来封装对象的属性和功能;2. 掌握类变量与实例变量,以及类方法与实例方法的区别;3. 掌握使用package和import语句;4. 稳固以下概念:子类的继承性,子类对象的创立过程,成员变量的继承与隐藏,方法的继承与重写。二、实验学时4学时三、实验任务1三角形、梯形和圆形的类封装² 实验要求:编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形、“梯形和“圆形。具体要求如下:a)Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以及修改三个边的功能。另外,Trangle类还具有一个boolean型的属性,该属性用来判断三个属能否构成一个三角形。b)Lader类具有类型double的上底、下底、高、面积属性,具有返回面积的功能。c)Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能。² 程序模板:AreaAndLength.javaclass Trangle double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) 【代码1】 /参数a,b,c分别赋值给sideA,sideB,sideC if(【代码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; else System.out.println("不是一个三角形,不能计算面积"); return 0; public void setABC(double a,double b,double c) 【代码6】 /参数a,b,c分别赋值给sideA,sideB,sideC if(【代码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分别赋值给above,bottom,height double getArea() 【代码11】 /方法体,,要求计算出area返回 class Circle double radius,area; Circle(double r) 【代码12】 /方法体 double getArea() 【代码13】 /方法体,要求计算出area返回 double getLength() 【代码14】 /getArea方法体的代码,要求计算出length返回 void setRadius(double newRadius) radius=newRadius; double getRadius() return radius; public class AreaAndLength public static void main(String args) double length,area; Circle circle=null; Trangle trangle; Lader lader; 【代码15】 /创立对象circle 【代码16】 /创立对象trangle。 【代码17】 /创立对象lader 【代码18】 / circle调用方法返回周长并赋值给length System.out.println("圆的周长:"+length); 【代码19】 / circle调用方法返回面积并赋值给area System.out.println("圆的面积:"+area); 【代码20】 / trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); 【代码21】 / trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); 【代码22】 / lader调用方法返回面积并赋值给area System.out.println("梯形的面积:"+area); 【代码23】 / trangle调用方法设置三个边,要求将三个边修改为12,34,1。 【代码24】 / trangle调用方法返回面积并赋值给area System.out.println("三角形的面积:"+area); 【代码25】 / trangle调用方法返回周长并赋值给length System.out.println("三角形的周长:"+length); ² 实验后的练习:1. 程序中仅仅省略【代码15】,编译能通过吗?2. 程序中仅仅省略【代码16】,编译能通过吗?3. 程序中仅仅省略【代码15】,运行时出现怎样的异常提示? 4. 给Trangle类增加3个方法,分别用来返回3个边:sideA、sideB和sideC。5. 让AreaAndLength类中的circle对象调用方法修改半径,然后输出修改后的半径以及修改半径后的圆的面积和周长。2实例成员与类成员。 ² 实验要求:按程序模板的要求编写源文件,要特别注意程序的输出结果,并能正确解释输出的结果。² 程序模板:Example.javaclass A 【代码1】 /声明一个float型实例变量a 【代码2】 /声明一个float型类变量b,即static变量b void setA(float a) 【代码3】 /将参数a的值赋值给成员变量a void setB(float b) 【代码4】 /将参数b的值赋值给成员变量b float 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】 /通过类名调用方法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. 将inputA()方法中的System.out.println(a);改写为System.out.println(a+b);编译是否出错?为什么?2. 将inputB()方法中的System.out.println(b);改写为System.out.println(a+b);编译是否报错?为什么? 3使用package语句与import语句。² 实验要求:创立一个java包,名为“chan;定义一个学生类student1,分别定义num,name,sex三个属性,访问修饰符分别是private、无修饰符和public修饰符。在主类student中创立学生类的对象,并且分别设置学号,姓名和性别的初始值,在主类中调用对象。用import语句导入学生包fxj_stu,分别定义num,name,sex三个属性,访问修饰符分别是private、无修饰符和public修饰符,然后在主类中创立对象,修改其属性值,看能否成功,如果不能,改变其访问修饰符,然后再观察结果。² 程序运行效果例如:程序运行效果如以下图所示:² 程序模板:student.javapackage chan;import fxj.fxj_stu;class student1public int num; String name;public String sex;public class student public static void main(String args) student1 new_student=new student1(); new_student.num=14; new_student.name="chan"new_student.sex="男"fxj_stu xiaming=new fxj_stu();xiaming.num=19;xiaming.name="夏明"xiaming.sex="男"System.out.println("输出我的根本信息:");System.out.println("号码:"+new_student.num);System.out.println("姓名:"+new_student.name);System.out.println("性别:"+new_student.sex);System.out.println("输出夏明的根本信息:");System.out.println("号码:"+xiaming.num);System.out.println("姓名:"+xiaming.name);System.out.println("性别:"+xiaming.sex);fxj_stu.javapackage fxj;public class fxj_stu public static int num=17;public static String name="付小姐"public static String sex="女" public static void main(String args) System.out.println("输出付小姐的根本信息:");fxj_stu fuxiaojun=new fxj_stu();System.out.println("号码:"+fuxiaojun.num);System.out.println("姓名:"+fuxiaojun.name);System.out.println("性别:"+fuxiaojun.sex);² ²实验后的练习:1. 将访问修饰符权限全改为public,可以在不同包中访问吗?可以不同类中被访问吗?2. 将student1中的num的权限改为private,能否通过编译?为什么?3. 将fxj包中的num和name改为private和default,能否通过编译?为什么?【结果】将本次上机实验结果按照实验要求内容依次进行,填写实验目标、过程、结果。 【考前须知】实验报告要求每人提交一份,使用专门的报告纸,内容写全,包括实验名称、班级、姓名、试验日期。实验三 字符串、时间与数字类一、实验目的及要求1 掌握String类的常用方法2 掌握Date类以及Calendar类的常用方法;3 掌握BigInteger类的常用方法。二、实验学时4学时三、实验任务1String类的常用方法。² 实验要求:编写一个Java应用程序,判断两个字符串是否相同,判断字符串的前缀、后缀是否和某个字符串相同,按字典顺序比拟两个字符串的大小关系,检索字符串,创立字符串,将数字型字符串转换为数字,将字符串存放到数组中,用字符数组创立字符串。² 程序模板:StringExample.javaclass StringExample public static void main(String args) String s1=new String("you are a student"), s2=new String("how are you"); if(【代码1】) / 使用equals方法判断s1与s2是否相同 System.out.println("s1与s2相同"); else System.out.println("s1与s2不相同"); String s3=new String("22030219851022024"); if(【代码2】) /判断s3的前缀是否是“220302”。 System.out.println("吉林省的身份证"); String s4=new String("你"), s5=new String("我"); if(【代码3】)/按着字典序s4大于s5的表达式。 System.out.println("按字典序s4大于s5"); else System.out.println("按字典序s4小于s5"); int position=0; String path="c:javajspA.java" position=【代码5】 /获取path中最后出现目录分隔符号的位置 System.out.println("c:javajspA.java中最后出现的位置:"+position); String 【代码6】/获取path中“A.java子字符串。 System.out.println("c:javajspA.java中含有的文件名:"+); String s6=new String("100"), s7=new String("123.678"); int n1=【代码7】 /将s6转化成int型数据。 double n2=【代码8】 /将s7转化成double型数据。 double m=n1+n2; System.out.println(m); String s8=【代码9】 /String调用valuOf(int n)方法将m转化为字符串对象 position=s8.indexOf("."); String temp=s8.substring(position+1); System.out.println("数字"+m+"有"+temp.length()+"位小数") ; String s9=new String("ABCDEF"); char a=【代码10】 /将s8存放到数组a中。 for(int i=a.length-1;i>=0;i-) System.out.print(" "+ai); ² 实验后的练习:1. 程序中的s6改写成String s6=new String(“1a12b);运行时提示怎样的错误? 2. 请用数组a的前3个单元创立一个字符串并输出该串。3. 请给出获取path中“jsp子字符串的代码。4. 在程序的适当位置增加如下代码,注意输出的结果。String str1=new String(“ABCABC),str2=null,str3=null,str4=null;str2=str1.replaceAll(“A,First);str3=str2.replaceAll(“B,Second);str4=str3.replaceAll(“C,Third);System.out.println(str1);System.out.println(str2);System.out.println(str3);System.out.println(str4);5. 可以使用Long类中的以下static方法得到整数各种进制的字符串表示: Public static String toBinaryString(long i) Public static String toOctalString(long i)Public static String toHexString(long i)Public static String toString(long i,int p)其中的toString(long i, int p)返回整数i的p进制表示。请在适当位置添加代码输出12345的二进制、八进制和十六进制表示。6. 在适当位置添加代码,分别输出数字m的整数局部和小数局部。2比拟日期的大小。² 实验要求:编写一个Java应用程序,用户从输入对话框输入了两个日期,程序将判断两个日期的大小关系,以及两个日期之间的间隔天数。² 程序模板:DateExample.javaimport java.util.*;import javax.swing.JOptionPane;public class DateExample public static void main(String args ) String str=JOptionPane.showInputDialog("输入第一个日期的年份:"); int yearOne=Integer.parseInt(str); str=JOptionPane.showInputDialog("输入该年的月份:"); int monthOne=Integer.parseInt(str); str=JOptionPane.showInputDialog("输入该月份的日期:"); int dayOne=Integer.parseInt(str); str=JOptionPane.showInputDialog("输入第二个日期的年份:"); int yearTwo=Integer.parseInt(str); str=JOptionPane.showInputDialog("输入该年的月份:"); int monthTwo=Integer.parseInt(str); str=JOptionPane.showInputDialog("输

    注意事项

    本文(Java程序设计实验指导书.doc)为本站会员(doc321)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

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




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开