语言程序设计实验指导书提交版_第1页
语言程序设计实验指导书提交版_第2页
语言程序设计实验指导书提交版_第3页
语言程序设计实验指导书提交版_第4页
语言程序设计实验指导书提交版_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

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

文档简介

1、目录实验 G01: 计算机、程序和 Java 概述2实验 G02:基本数据类型和基本操作10实验 G03:条件语句15实验 G04:循环19实验 G05:方法23实验 G06:数组26实验 G07:对象和类31实验 G08:字符串和文本 I/O37实验 G09:继承与多态41实验 G10:抽象类和接口49实验 G11:面向对象设计54实验 G12: 实验 G13: 实验 G14:实验 G15:图形用户界面程序设计入门59图形63驱动程序71创建图形用户界面78实验 G16: applet 和多.83实验 G17:实验 G18:实验 G19:异常处理89二进制 I/O92递归96实验 G01:

2、计算机、程序和 Java 概述一、实验名称和性质二、实验目的1. 了解 Java 开发运行环境,同时学会设置 JDK6.0 路径;2. 学习在 DOS 环境下编译和运行 Application 程序。三、实验内容1. 先安装 JDK6.0,安装好后,进行 JDK6.0 路径设置(验证性实验)。2. 在 DOS 环境下编译和运行程序 HelloJava.java,观察运行成果(验证性实验)。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前

3、期要求掌握的知识: 了解如何配置 JDK 编译环境。实验相关理论或原理: JDK(Java Development Kit)是 Sun MicrosystemsJava 开发员的。自从 Java 推出以来,JDK 已经成为使用最广泛的 Java SDK。JDK 是整个 Java的,包括了 Java 运行环境,Java 工具和 Java 基础的类库。JDK 是学好 Java 的第一步。而专门运行在x86 平台的Jrocket 在服务端运行效率也要比Sun JDK 好很多。从SUN 的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。本实验指导书使用最新的

4、 jdk1.6.0_02。六、验证性实验1.JDK6.0 的安装和 JDK6.0 路径设置(1)从网上JDK6.0,如:(2)双击后进行 JDK6.0 的安装,如图 1.1 所示:所属课程面向对象程序设计实验名称计算机、程序和 Java 概述实验学时2实验性质 验证综合 设计必做/选做 必做选做图 1.1 进入安装界面(3)点击接受后,可以自定义安装,这里使用安装程序的默认路径:C:Program FilesJavajdk1.6.0_02;如图 1.2 所示:图 1.2 设置安装路径,开始自定义安装(4)点击下一步,就可以安装了如图 1.3 所示:图 1.3 正在安装 JDK6.0(5)等到安

5、装完成会弹出“安装完成”框,如图 1.4 所示,则完成 JDK6.0 的安装:图 1.4 JDK6.0 安装完成(6)安装好JDK6.0 后,可以打开安装的目录如图 1.5 所示:图 1.6 JDK 安装好后生成的文件如果想在系统的任意目录下编译和运行编写好的 Java 程序,需要先设置环境变量,请按以下步骤配置(记着 JDK 的默认安装路径 C:Program FilesJavajdk1.6.0_02;)。(7)鼠标右键单击“变量如图 1.7 所示:电脑”,选择“属性”,在弹出框中选择“高级”下的环境图 1.7 Windows 系统特性界面(8)在“系统变量”中选择 Path,单击“编辑”按

6、钮(如图 1.8 所示),在弹出的“变量值”文本框中添加“;C:Program FilesJavajdk1.6.0_02bin”,单击确定按钮(如图 1.9 所示)。图 1.8Windows 系统变量框图 1.9 编辑系统变量 Path(9)在“系统变量”中单击“新建”按钮(如图 1.10 所示),在弹出框中的“变量名”后输入 java_home,“变量值”后输入“C:Program FilesJavajdk1.6.0_02bin”,单击“确定”按钮(如图 1.11 所示)。图 1.10 选择“新建”系统变量图 1.11 新建系统变量 java_home(10)在“环境变量”下单击“新建”按钮

7、,在弹出框中的“变量名”后输入 classpath,在“变量值”后输入“C:Program FilesJavajdk1.6.0_02bintools.jar; C:ProgramFilesJavajdk1.6.0_02jrelibrt.jar;.;”,单击“确定”按钮(如图 1.12 所示结果)。图 1.12 新建系统变量 classpath(11)至此环境变量设置完毕,用户可以通过在 DOS 环境下直接键入 javac 命令按回车来检查环境变量设置是否,如果设置则可以看到如图 1.12 所示结果。图 1.12 javac 命令的相关使用语法在以后需要进入 DOS 命令直接编译和运行 Java

8、 程序时,只需进入 Java 程序所在的存放目录,通过 javac 和 Java 命令编译和执行相应程序。2. 在 DOS 环境下编译运行 ApplicationHelloJava.java(1)实验要求在试验 1 所安装的 JDK6.0 和设置的 JDK 路径的基础上,使用任意文本编辑器编写程序 HelloJava.java(代码见参考代码),编写好后,将文件保存成以 HelloJava.java 为文件名的文件。使用 DOS 命令进入 HelloJava.java 文件所放的目录(如图 1.13 所示,如:C:Example),使用 javac 命令编译该程序,通过编译后再该文件夹中会生成

9、一个名为 HelloJava.class 的 class 文件(如图1.14 所示),该 class 文件包含程序的字节码,使用 Java 命令执行该 class 文件,可在台下看到执行的结果(如图 1.16 所示)。图1.13 HelloJava.java文件的目录在DOS环境下使用【cd 文件名】格式进入下一级目录,然后键入javac HelloJava.java编译程序。(可通过cd.返回上一级目录)图1.14 编译程序HelloJava.java这样打开Example文件,将发现系统自动生成了HelloJava.class文件,如图1.15所示:图1.15 生成了HelloJava.c

10、lass文件然后继续输入java HelloJava命令,按回车后可以发现输出“Hello Java!”,这也就是程序运行的结果(如图1.16所示)。图 1.16 一个Application 输出 Hello Java(2)源程序代码参考public class HelloJava /输出Hello Java!/主程序public static void main(String args) System.out.println("Hello Java!");实验 G02:基本数据类型和基本操作一、实验名称和性质二、实验目的.学会使用Java 运算符书写表达式;

11、熟悉 Java 的文档管理、编程风格和命名习惯;学会通过 JOptionPane 实现框输入输出;学会在台上实现输入输出。三、实验内容1编写一个程序,用来计算圆的面积 (验证性实验)。2给出在台中求两个实数的最大值程序,要求使用框(图形界面)方式编写程序实现求两个实数的最大值(设计性实验)。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前期要求掌握的知识:了解 Java 程序表达式基本实验相关理论或原理:和运算符的使用方法。*表达式计算

12、的规则:可能的情况下,从左向右依次计算所有的表达式;根据运算符的优先级进行运算;对优先级相同的相邻运算符,根据结合方向进行运算。*编程风格和文档(1) 适当的注释和注释类型(2) 命名习惯变量和方法常用小写,如果包含多个单词,第二个单词之后的每个单词的首字母大写类的每个单词首字母大写常量中所有字母大写,两个单词之间用下划线连接(3) 适当的缩进和空白(4) 块的对齐方式所属课程面向对象程序设计实验名称基本数据类型和基本操作实验学时4实验性质 验证综合设计必做/选做 必做选做六、验证性实验1实验要求新建、编译、运行 CircleArea.java 程序,运行结果如图 2.1 所示。图 2.1 半

13、径为 20 的圆的面积显示2源程序代码参考public class CircleArea /主程序public static void main(String args) double doubleradiusradius; area;= 20;/ 计算圆的面积area = radius * radius * 3.14159;/ 输出结果System.out.println("The area for the circle of radius " +radius+ " is " + area);七、设计性实验1.在台实现输入输出的程序(1)实验要求建立编

14、译、运行程序 CompareTwoNumbers1.java ,在结果如图 2.2 所示。台上实现输入和输出。图 2.2 比较两个数运行结果(2)源程序代码/ CompareTwoNumbers1.javaimport java.util.Scanner;public class CompareTwoNumbers1 double number1,number2; Scanner scanner;public CompareTwoNumbers1() System.out.println("请输入两个数:");scanner=new Scanner(System.in);

15、/实例化一个Scanner对象number1=scanner.nextDouble(); number2=scanner.nextDouble();System.out.println("较大的数/从键盘输入一个整数赋值给number1/从键盘输入一个整数赋值给number2是:"+(number1>number2?number1:number2);/将number1和number2中的较大数输出public static void main(String args) CompareTwoNumbers1 ct=new CompareTwoNumbers1(); Sy

16、stem.exit(0);2. 通过框实现输入输出的程序(1)实验要求建立编译、运行程序 CompareTwoNumbers2.java ,通过结果如图 2.3 所示。框实现输入和输出。图 2.3 通过图形界面实现输入输出(2)源程序代码/CompareTwoNumbers2.javaimport javax.swing.*;public class CompareTwoNumbers2 StringdoubleinputNumber1,inputNumber2;number1,number2;CompareTwoNumbers2()/构造方法publicinputNumber1=JOptio

17、nPane.showInputDialog(null, "整数1:","请输入",JOptionPane.QUESTION_MESSAGE);/利用JOptionPane类输入数1 inputNumber2=JOptionPane.showInputDialog(null, "整数2:","请输入",JOptionPane.QUESTION_MESSAGE);/利用JOptionPane类输入数2 number1=Double.parseDouble(inputNumber1); number2=Double.pa

18、rseDouble(inputNumber2);JOptionPane.showMessageDialog(null,"较大的整数是: "+(number1>number2?number1:number2),"运行结果",JOptionPane.INFORMATION_MESSAGE);/将两个数比较的结果在信息窗口中输出,窗口的标题为"运行结果"public static void main(String args) CompareTwoNumbers2 cts=new CompareTwoNumbers2(); System

19、.exit(0);实验 G03:条件语句一、实验名称和性质二、实验目的1. 了解程序设计的 2 种结构:顺序、条件;2. 理解 Java 语言中的条件语句:if()、if()else、嵌套if/else 多分支语句和switch()多分支语句;3. 简单了解break 和 continue 的使用方法。三、实验内容1设计一个成绩等级的类,要求从键盘输入学生的 Java 成绩,该学生的成绩的等级,90:A,8980:B,7970:C,6960:D,60:E(验证性实验)。2用 switch 语句实现 Java 成绩等级,同样要求从键盘输入学生的 Java 成绩,判断该学生的成绩的等级,90:A,

20、8980:B,7970:C,6960:D,60:E(设计性实验)。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前期要求掌握的知识:了解 Java 的条件语句使用方法。实验相关理论或原理:条件语句有 4 种基本语句: if()、if()else、嵌套 if/else多分支语句和 switch()多分支语句;其中 switch 语句往往和 break 语句相结合,形成对某种特定条件的。Java 中,有三种可以实现跳转功能的语句:break

21、、continue、return。break 含义:终止本次条件,从 switch 语句中或终止循环,从循环中。continue 含义:无条件使转移到循环语句的条件方法中的返回语句。六、验证性实验1实验要求部分,终止本次循环,直接进入下一次循环。return 语句是编译、运行 JavaGrade1.java 程序,运行结果如图 3.1 和图 3.2 所示。所属课程面向对象程序设计实验名称条件语句实验学时4实验性质 验证综合设计必做/选做 必做选做图 3.1 输入成绩2源程序代码参考/JavaGrade1.javaimport javax.swing.*;public class JavaGra

22、de1 图 3.2 显示等级String String doublepublicscoreStr; grade; score;JavaGrade1() scoreStr=JOptionPane.showInputDialog(null,"输入成绩(百分值)");score=Double.parseDouble(scoreStr);if(score>100|score<0)/输入的成绩是否合法JOptionPane.showMessageDialog(null,"输入信息错误!","结果",JOptionPane.WARNI

23、NG_MESSAGE);/根据成绩,等级Aif(score>=90) grade="A"else if(score>=80&&score<90) grade="B"else if(score>=70&&score<80)/根据成绩,等级B/根据成绩,等级Cgrade="C"else if(score>=60&&score<70) grade="D"elsegrade="E"/根据成绩,等级D/根据成绩,等级

24、EJOptionPane.showMessageDialog(null,"成绩为:"+score+"n等级为: "+grade,"学生的成绩等级",JOptionPane.INFORMATION_MESSAGE);public static void main(String args) JavaGrade1 gradeJudge=new JavaGrade1(); System.exit(0);七、设计性实验1实验要求编译、运行程序 JavaGrade2.java ,结果如图 3.3 所示。图 3.3 输入成绩2部分源程序代码/Jav

25、aGrade2.javaimport javax.swing.JOptionPane;public class JavaGrade2 String JavaScore; String grade;int score;public JavaGrade2() 图 3.4 显示等级JavaScore=JOptionPane.showInputDialog("输入一位学生的Java成绩:");score=Integer.parseInt(JavaScore);/成绩是否是百分制的成绩if(score<=100&&score>=0)switch(score

26、/10)case case case casecase10:9:grade="等级为:A"break; 8:grade="等级为:B"break; 7:grade="等级为:C"break; 6:grade="等级为:D"break;default:grade="等级为:E"elsegrade="输入错误的成绩" JOptionPane.showMessageDialog(null,grade,"学生的成绩等级",JOptionPane.INFORMATI

27、ON_MESSAGE);public static void main(String args) JavaGrade2 gradeJudge=new JavaGrade2(); System.exit(0);实验 G04:循环一、实验名称和性质二、实验目的1、了解 Java 提供结构:循环,理解循环语句的流程;2、熟练掌握使用 while、do while 和 for 语句来语句的重复。三、实验内容1.编制一个类,用循环结构实现简单的猜数字:(验证性实验)(1)程序随机分配给客户一个 1100 之间的整数;(2)用户在输入框中输入的猜测;(3) 程序返回提示信息,提示信息分别是:“猜大了”、“

28、猜小了”和“猜对了”;(4) 用户可根据提示信息再次输入猜测,直到提示信息是“猜对了”。2.编写一个类,在台中输出九九乘法表(设计性实验)。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前期要求掌握的知识:了解 Java 程序的运行流程,能够实现循环实验相关理论或原理:。1.while 循环的语法如下:while(循环继续条件)/循环体; 语句(组);2. do-while 循环的语法:do/循环体; 语句(组);while(循环继续条

29、件)3.for 循环的语法图如下:所属课程面向对象程序设计实验名称循环实验学时2实验性质 验证综合设计必做/选做 必做选做六、验证性实验1实验要求编译、运行程序 GuessNumber.java,结果如图 4.1 所示。图 4.1 验证性试验运行结果2部分源程序代码/GuessNumber.javaimport javax.swing.JOptionPane;public class GuessNumberpublic static void main (String args )JOptionPane.showMessageDialog(null,"给你一个1至100之间的整数,请

30、猜测这个数");int realNumber=(int)(Math.random()*100)+1;int yourGuess=0;String str=JOptionPane.showInputDialog("输入您的猜测:"); yourGuess=Integer.parseInt(str); while(yourGuess!=realNumber) /循环条件if(yourGuess>realNumber)/条件代码str=JOptionPane.showInputDialog("猜大了,再输入你的猜测:");yourGuess=I

31、nteger.parseInt(str);else if(yourGuess<realNumber) /条件代码str=JOptionPane.showInputDialog("猜小了,再输入你的猜测:");yourGuess=Integer.parseInt(str);JOptionPane.showMessageDialog(null,"恭喜你猜对了!");七、设计性实验1.实验要求建立 MultiplyList.java,实现在台中输出九九乘法表。结果如图 4.2 所示:图 4.2 输出九九乘法表2部分源程序代码/MultiplyListpu

32、blic class MultiplyList public static void main(String args) String output=""for(int col=1;col<10;col+)for(int row=1;row<=col;row+)/设置九九乘法表的行row/设置九九乘法表的列coloutput+=col+"*"+row+"="+(row*col)+" "九九乘法表的内容output+="n"/输出九九乘法表System.out.println(outp

33、ut);System.exit(0);实验 G05:方法一、实验名称和性质二、实验目的1. 学会创建方法,调用方法,给方法传递参数;2. 了解如何使用 Math 类中的方法;3. 掌握重载方法的特点和实现。三、实验内容1. 编写方法public static int reverse(int number),例如 reverse(52)显示 25(验证性内容)。2. 使用 Math 类中的 Math.pow()函数,通过编写重载方法实现求不同类型的数的立方值。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP

34、或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前期要求掌握的知识: 了解 Math 类,掌握对 Java 提供的类的使用方法。实验相关理论或原理:1. 在一个类中定义几个同名的方法,这些方法具有不同的参数类型,或参数数量不同, 或参数次序不同,这种方法就叫做方法的重载。当调用类中的重载方法时,Java 会自动根据提供的参数类型、数量、次序选择相应的方法来调用。2. Math 类常用值与函数:Math.PI Math.maxMath.pow的圆周率 Math.abs 求绝对值 Math.sin 正弦函数 Math.asin 反正弦函数求两数中最大 Math.min 求两数中

35、最小 Math.sqrt 求开方求某数的任意次方, 抛出 ArithmeticException 处理溢出异常Math.random 返回 0,1 之间的一个随机数用法实例:double s=Math.sqrt(7);六、验证性实验1实验要求double x=Math.pow(2,3) /计算 2 的 3 次方要求使用递归方法编写 GetReverse.java 文件,并编译运行该程序,结果如图 5.1 所示:所属课程面向对象程序设计实验名称方法实验学时2实验性质 验证综合设计必做/选做 必做选做图 5.1 倒置整数的实现2. 程序参考代码/GetReverse.javaimport java

36、.util.Scanner;public class GetReverse public static void reverse(int number) /reverse 方法的实现if(number<10) System.out.print(number);elseint num = number%10; System.out.print(num); reverse(number/10);/number的值/递归方式实现public static void main(String args) System.out.println("请输入任意整数:"); Scann

37、er scanner;scanner=new Scanner(System.in);int intNumber=scanner.nextInt(); System.out.println("倒置后的整数为:"); reverse(intNumber);七、设计性实验1实验要求用重载方法编写程序 NumCube.java 文件,求不同类型数的立方。实验结果如图 5.2 所示:图 5.2 程序运行结果2. 程序参考代码/NumCube.javapublic class NumCube static int cube(int i)System.out.println("

38、调用int cube()方法");return (int)Math.pow(i,3);static float cube(float i) System.out.println("调用float cube()方法"); return (float)Math.pow(i,3);static double cube(double i) System.out.println("调用double cube()方法"); return Math.pow(i,3);public static void main(String args) int a=5;S

39、ystem.out.println("a的立方是:"+cube(a);float b=5.0f;System.out.println("b的立方是:"+cube(b);double c=5.0d;System.out.println("c的立方是:"+cube(c);实验 G06:数组一、实验名称和性质二、实验目的1、理解和掌握数组的、初始化、应用等内容;2、熟练掌握和使用数组来解决实际问题;3、了解和初步应用 java.lang.Math 类的 random()方法处理实际问题;4、了解并掌握 JDK5.0 中新增的增强 for 循

40、环,并用其三、实验内容1.编制一个类,实现以下功能:(验证性实验)数组元素。(1)从台输入 10 个整数,并存放将它们在一个数组中;(2)通过数组对这些数字用冒泡排序的方法进行排序,并输出到台上.2. 编写一个类,随机地输出几个学生的成绩,已经给出的10个学生选择的下要求:(设计性实验)。(1) 随机产生3个学生的学号;(2) 输出这3个学生选择的学号和;(3) 计算并输出这3个学生的成绩。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备

41、,实现以前期要求掌握的知识:数组的实验相关理论或原理:与初始化,数组的创建,对数组元素的。数组是很重要的数据结构,由同一类型相关的数据结构组成是静态实体,有链表,队列, 堆栈,数等数据结构,java 还提出了类数组的类 vector.这些都是 java 数据结构的组成部分, 正如我们学过的版的数据结构。数组查找:分线性插找和折半查找:对于小型的数组线性查找效果可能很好,对于大型数据效率就很低了,可以用折半查找,效率会很大的提高,折半查找的方法是,例如查找含 63 个元素只需要比较 6 次大小第一次查找下标/2=32 查找若大于关键子,则到下标为 1-32 中查找,若小与关键子,则到 33-63

42、 中查找,若找不到,继续到下一个范围中找,就是在将 32 分半,以上面的方法以此类推,直到找到为止.六、验证性实验1、 实验要求:所属课程面向对象程序设计实验名称数组实验学时2实验性质 验证综合设计必做/选做 必做选做编译、运行程序 InsertionSort.java,结果如图 6.1 所示。图 6.1 程序运行结果2部分源程序代码/ InsertionSort.javaimport java.util.*;public class InsertionSort Scanner scanner;int myList;public InsertionSort()myList = new int1

43、0;scanner = new Scanner(System.in);/ 输入10个整数System.out.println("请输入10个整数: ");for(int i = 0;i<10;i+) myListi = scanner.nextInt();sorting_myList(myList); /对myList数组进行冒泡排序System.out.println("排序后的结果是: ");printList(myList);/ 输出数组的元素static void printList(int list) for (int i = 0; i

44、< list.length; i+) System.out.print(listi + " ");System.out.println();/ 排序的方法public void sorting_myList(int list) for (int i = 1; i < list.length; i+) / 对数组进行冒泡排序int intforcurrentElement = listi; k;(k = i-1;k >= 0 && listk > currentElement;k-)listk+1 = listk;listk+1 = c

45、urrentElement; / 对10个整数进行冒泡排序public static void main(String args) InsertionSort insertSort = new InsertionSort();System.exit(0);七、设计性实验1.实验要求建立 Arrayxy_random.java,实现在6.2 所示:台中随机输出几个学生的成绩。结果如图图 6.2 程序运行结果2部分源程序代码/Arrayxy_random.javapublic class Arrayxy_random char StuAnswers = 'A','B'

46、;,'B','C','A','D','A','D','B','D','A','C','B','D','D','C','B','D','D','B','B','D','C','A','C','C','A'

47、;,'B','A','D','B','C','C','A','D','B','C','A','A','B','D','C','C','C','B','A','D','A','D','A','C','B'

48、;,'A','D','B','B','A','D','C','B',;/10个学生选择的char key = 'A','B','A','D','C','A'/题目的标准public Arrayxy_random() int Stu_number;/学生的学号(110号)for(int i=0;i<3;i+)Stu_number = (int)(100*Math.ran

49、dom()%10)+1;/随机地产生学生的学号int grade = JudgeGrade(Stu_number);函数,计算学号为Stu_number的学生的成绩System.out.println(" 成绩是:"+grade);/ 调用JudgeGrade/输出随机产生的学号的学生的,并计算其成绩(一个题一分)public int JudgeGrade(int num)int count = 0;System.out.print("学号为"+num+"的是:");for(int i = 0;i < key.length;i+

50、) System.out.print(StuAnswersnum-1i+" "); if(StuAnswersnum-1i=keyi)count+;return count;public static void main(String args) Arrayxy_random arrandom = new Arrayxy_random(); System.exit(0);实验 G07:对象和类一、实验名称和性质二、实验目的1. 理解对象和类,用类建立对象模型;2. 学会如何定义类和创建类的对象;3. 在用构造方法创建对象时理解构造方法的作用;4. 学会使用关键字 this三

51、、实验内容对象。1. 编写日期类 MyDate, 定义日期所用变量并进行初始化,定义修改日期的方法changeDate() 用布尔变量 flag 来实现程序的结束与否,用 displayDate() 输出日期,用方法showTips() 制出菜单,写出 main()方法演示程序功能(验证性实验)。2. 编写一个圆类 Circle,其中有圆周率,半径和圆对象个数,其中圆周率和圆对象个数为 static 成员,此外,Circle 中还有两个 static 方法分别是设置圆周率和显示当前圆对象个数的,其余都是实例成员(设计性实验)。四、实验的软硬件环境要求硬件环境要求:PC 计算机;内存 512MB

52、 以上使用的软件名称、版本号以及模块:操作系统: WindowsXP 或 Windows 7软件:JDK 6.0;DOS 环境五、知识准备前期要求掌握的知识:了解 Java 中类的创建,对象的创建和使用。实验相关理论或原理:(1) 在 Java 语言里,对象是一组描述对象的属性和操作方法的集合,其中属性表明对象的状态,方法表明对象的行为。类是对象的定义。一个对象具有哪些属性和方法,由类来决定。从编程角度看,类是一种复合数据类型,它封装了一组变量和方法(函数)。(2) 对象与类是不同但是又紧密相联的概念。类是对象的定义,对象由类来生成。类与对象的关系好比铸造车间里模具与的关系。模具只有一个,但是

53、用这个模具可以浇铸出很多成型的出来,模具的形状决定了浇铸出来的的外形。在 Java 语言里用 new关键字来生成对象,通常的格式为: 类名 对象名=new 类名(参数);(3)静态变量 :类加载时初始化,全类公有,类名.;成员变量: 创建对象过程中初始化,对象公有,对象.六、验证性实验。所属课程面向对象程序设计实验名称对象和类实验学时2实验性质 验证综合设计必做/选做 必做选做验证性实验 11实验要求创建、编译和运行程序 MyDate.java,运行结果如图 7.1 所示:图 7.1 日期类运行结果2. 程序参考代码/MyDate.javaimport import publicintint

54、intjava.util.InputMismatchException; java.util.Scanner;class MyDate year;month;day;int num_order;/ 接受来自命令行的输入,int类型,只要负责showTips()令代号和日期的修改boolean flag = true;/ public MyDate()year = 2012;month = 3;day = 14;/ 构造函数程序的,当flag = false时,public MyDate(int year, int month, int day) this.year = year; this.m

55、onth = month; this.day = day;/ showTips()用于提示用户相关操作代号public void showTips() System.out.println("1修改年份"); System.out.println("2修改月份"); System.out.println("3修改日期");System.out.println("4修改全部");System.out.println("5修改");public void changeDate() /修改日期的函数S

56、canner _order = new Scanner(System.in);System.out.print("请输入您/下面的数字异常没有捕获令:");num_order = _order.nextInt();if (num_order = 1) System.out.println("请输入新的年份:"); year = _order.nextInt();System.out.println();else if (num_order = 2) System.out.println("请输入新的月份:"); month = _order.nextInt(); System.out.println();else if (num_order = 3) System.out.println("请输入新的日份:"); day = _order.nextInt(); System.out.println();else if (num_order = 4) System.out.println("请输入新的年份:"); year = _order.nextInt(); System.out.println("请输入新的月份:");

温馨提示

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

评论

0/150

提交评论