已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
甘肃政法学院甘肃政法学院 本科学生实验报告本科学生实验报告 一一 姓名姓名 学院学院 计算机科学学院 计算机科学学院 专业专业 计算机科学与技术 计算机科学与技术 班级班级 实验课程名称实验课程名称 JAVAJAVA 开发与语言基础开发与语言基础 试验时间试验时间 20112011 年年 9 9 月月 2828 日日 指导教师及职称指导教师及职称 实验成绩实验成绩 开课时间开课时间 20112011 学年学年 第一第一 学期学期 甘肃政法学院实验管理中心印制甘肃政法学院实验管理中心印制 实验题目实验题目面向对象编程小组合作小组合作否否 姓姓 名名唐晓梅班班 级级 2011 级专升本班 学学 号号 201181210126 一 实验目的 一 实验目的 1 熟悉 Java 面向对象程序设计的基本思想 2 掌握类与对象的定义及使用方法 3 掌握 package 语句与 import 语句的用法 4 掌握 java 继承中父类及其子类的定义方法 5 掌握子类重写父类同名方法的方法 6 掌握用法 二 实验环境 二 实验环境 装有 JDK1 6 Eclipse的的计算机一台 三 实验内容与步骤 1 Java程序开发环境配置 1 下载并安装 JDK1 6 过程可参考教材 P4 6 2 配置环境变量 SDK 平台提供的 Java 编译器 javac exe 和 Java 解释器 java exe 位于 Java 安装目录的 bin 文件夹中 为了 能在任何目录中使用编译器和解释器 应在系统特性中设置 Path 对于 Windows2000 Windows2003 Windows XP 用鼠标右键点击 我的电脑 弹出菜单 然后选择属性 弹出 系统特性 对话框 再单击该对话框中的高级选项 然后点击按钮 环境变量 添加如 下图所示的系统环境变量 J2SDK 的安装目录的 jre 文件夹中包含着 Java 应用程序运行时所需 要的 Java 类库 这些类库被包含在 jre lib 目录下的压缩文件 rt jar 中 因此 再添加如下图所示环境变量 3 下载 Eclipse3 4 或以上版本 将其解压到某一目录下 使用时 只需双击 eclipse 图标即可 4 在记事本中编写简单的 Application 程序 运用 JDK 命令方式 在屏幕上打印输出 你好 很高兴学习 Java 5 在记事本中编写简单的 Applet 程序 运用 JDK 命令方式在 Java Applet 中绘制一行文字 这是一个 Java Applet 程序 6 在 Eclipse 环境下完成 3 4 所要求的任务 可参考教材 P416 实验 1 的步骤 2 Java 程序 实验实验 3 3 类与对象类与对象 1 三角形 梯形和圆形的类封装 分别定义三角形 梯形和圆形类 要求每个类中包含构造方法 求周长及面积的方法 最后在主方法中为 三角形 梯形和圆形类创建对象并打印输出各种图形的周长及面积 该 程序的模板代码如下 请将其补充完整并调试运行 AreaAndLength java class 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 sideA a sideB b sideC c 代码 2 a b c 代码 4 boo false 代码 5 if boo length sideA sideB sideC return length else System out println 不是一个三角形 不能计算周长 return 0 代码 6 sideA a sideB b sideC c 代码 7 a b c 代码 9 boo false 代码 10 above a bottom b height h 代码 11 area above bottom 2 height return area 代码 12 radius r 代码 13 return 3 14 radius radius 代码 14 return 3 14 2 radius 代码 15 circle new Circle 10 代码 16 trangle new Trangle 3 4 5 代码 17 lader new Lader 3 4 10 代码 18 length circle getLength 代码 19 area circle getArea 代码 20 length trangle getLength 代码 21 area trangle getArea 代码 22 area lader getArea 代码 23 trangle setABC 12 34 1 代码 24 area trangle getArea 代码 25 length trangle getLength 2 学习实例成员与类成员的区别 按照下面模板代码中的注释信息将 该程序补充完整并调试运行 Example java class 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 float a 代码 2 static float b 代码 3 this a a 代码 4 this b b 代码 5 A b 100 代码 6 A inputB 代码 7 cat setA 200 代码 8 cat setB 400 代码 9 dog setA 150 代码 10 dog setB 300 代码 11 cat inputA 代码 12 cat inputB 代码 13 dog inputA 代码 14 dog inputB 3 使用 package 语句与 import 语句 上机调试下面程序 学会 package 与 import 语句的用法 SquareEquation java package tom jiafei public class SquareEquation double a b c double root1 root2 boolean boo public SquareEquation double a double b double c this a a this b b this c c if a 0 boo true else boo false public void getRoots if boo System out println 是一元 2 次方程 double disk b b 4 a c if disk 0 root1 b Math sqrt disk 2 a root2 b Math sqrt disk 2 a System out printf 方程的根 f f n root1 root2 else System out printf 方程没有实根 n else System out println 不是一元 2 次方程 public void setCoefficient double a double b double c this a a this b b this c c if a 0 boo true else boo false SunRise java import tom jiafei class SunRise public static void main String args SquareEquation equation new SquareEquation 4 5 1 equation getRoots equation setCoefficient 3 4 5 equation getRoots 通过编译得出如下答案 这是在 JDK 下运行的错误 因为没有在 JDK 下建包 如下图所示 这个是在 eclipse 下运行的 因为把包的名字建错了 所以出错 这个就把包的名字改过来了 改成 tao jiafei 这样就对了 实验实验 4 4 继承与接口继承与接口 1 定义父类 People 分别定义 People 类的子类 ChinaPeople AmericanPeople 和 BeijingPeople 并分别重写父类中的 各个方法 最后在主方法中分别创建各子类的对象并调用各自的方法打 印输出信息 该程序的模板代码如下 请将其补充完整并调试运行 class People protected double weight height public void speakHello System out println yayawawa public void averageHeight height 173 System out println average height height public void averageWeight weight 70 System out println average weight weight class ChinaPeople extends People 代码 1 重写 public void speakHello 方法 要求输出 类似 你好 吃了吗 这样的 汉语信息 代码 2 重写 public void averageHeight 方法 要求输 出类似 中国人的平均身高 168 78 厘米 这样的汉语信 息 代码 3 重写 public void averageWeight 方法 要求输出类似 中国人的平均体重 65 公斤 这样 的汉语信息 public void chinaGongfu 代码 4 输出中国武术的信息 例如 坐如钟 站如松 睡 如弓 等 class AmericanPeople extends People 代码 5 重写 public void speakHello 方法 要求输出 类似 How do you do 这样的英语信息 代码 6 重写 public void averageHeight 方法 代码 7 重写 public void averageWeight 方法 public void americanBoxing 代码 8 输出拳击的信息 例如 直拳 钩拳 等 class BeijingPeople extends ChinaPeople 代码 9 重写 public void speakHello 方法 要求输出 类似 您好 这样的汉语信息 代码 10 重写 public void averageHeight 方法 代码 11 重写 public void averageWeight 方法 public void beijingOpera 代码 12 输出京剧的信息 public class Example public static void main String args ChinaPeople chinaPeople new ChinaPeople AmericanPeople americanPeople new AmericanPeople BeijingPeople beijingPeople new BeijingPeople chinaPeople speakHello americanPeople speakHello beijingPeople speakHello chinaPeople averageHeight americanPeople averageHeight beijingPeople averageHeight chinaPeople averageWeight americanPeople averageWeight beijingPeople averageWeight chinaPeople chinaGongfu americanPeople americanBoxing beijingPeople beijingOpera beijingPeople chinaGongfu 通过编译得出如下答案 代码 1 public void speakHello System out println 你好 吃饭了吗 代码 2 public void averageHeight height 173 System out println 中国人的平均身高 height 厘米 代码 3 public void averageWeight weight 67 34 System out println 中国人的平均体重 weight 公斤 代码 4 System out println 坐如钟 站如松 睡如弓 代码 5 public void speakHello System out println How do You do 代码 6 public void averageHeight height 188 System out println Amerian Average height height cm 代码 7 public void averageWeight weight 80 23 System out println Amerian Average weight weight kg 代码 8 System out println 直拳 钩拳 代码 9 public void speakHello System out println 您好 代码 10 public void averageHeight height 16 System out println 北京人的平均身高 height 厘米 代码 11 public void averageWeight weight 6 System out println 北京人的平均体重 weight 公 斤 代码 12 System out println 京剧术语 2 读懂下面模板代码 按要求补充程序并调试运行 掌握抽象类的定 义及其实现方法 学习上转型对象的运用方法 abstract class Employee public abstract double earnings class YearWorker extends Employee 代码 1 重写 earnings 方法 class MonthWorker extends Employee 代码 2 重写 earnings 方法 class WeekWorker extends Employee 代码 3 重写 earnings 方法 class Company Employee employee double salaries 0 Company Employee employee this employee employee public double salariesPay salaries 0 代码 4 计算 salaries return salaries public class HardWork public static void main String args Employee employee new Employee 20 for int i 0 i employee length i if i 3 0 employee i new WeekWorker else if i 3 1 employee i new MonthWorker else if i 3 2 employee i new YearWorker Company company new Company employee System out println 公司年工资总额 company salariesPay 通过编译得出如下答案 代码 1 public double earnings return 50000 456 代码 2 public double earnings return 12 2300 代码 3 public double earnings return 52 500 代码 4 for int i 0 i employee length i salaries salaries employee i earnings 3 读懂下面模板代码 按要求补充程序并调试运行 掌握接口的定义 及其实现方法 学习接口回调的运用方法 interface ComputerWeight public double computeWeight class Television implements ComputerWeight 代码 1 实现 computeWeight 方法 class Computer implements ComputerWeight 代码 2 实现 computeWeight 方法 class 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 String args ComputerWeight goodsOne new ComputerWeight 50 goodsTwo new ComputerWeight 22 for int i 0 i goodsOne length i if i 3 0 goodsOne i new Television else if i 3 1 goodsOne i new Computer else if i 3 2 goodsOne i new WashMachine for int i 0 i goodsTwo length i if i 3 0 goodsTwo i new Television else if i 3 1 goodsTwo i new Computer else if i 3 2 goodsTwo i new WashMachine Car 大货车 new Car goodsOne System out println 大货车装载的货物重量 大货车 getTotalWeights Car 小货车 new Car goodsTwo System out println 小货车装载的货物重量 小货车 getTotalWeights 通过编译得出如下答案 代码 1 public double computeWeight return 45 5 代码 2 public double computeWeight return 65 5 代码 3 public double computeWeight return 145 代码 4 for int k 0 k goods length k totalWeights totalWeights goods k computeWeight 第第 3 3 部分部分 常用类与异常处理常用类与异常处理 1 完成教材 P430 实验 5 1 package zuoye import java util public class TestString public static void main String args String data This is a String StringTokenizer st new StringTokenizer data int count st countTokens System out println 原串是 data System out println 各个单词如下 while st hasMoreTokens String s st nextToken System out println s System out println 单词总数 count 通过编译得出如下结果 2 完成教材 P116 例题 5 11 import java util import java text public class TestDateFormat public static Date parseDate String text String format 格式化日期字符串 try return new SimpleDateFormat format parse text catch ParseException e throw new RuntimeException e getMessage public static void main String args throws ParseException Date date new Date SimpleDateFormat f new SimpleDateFormat yyyy MM dd EEEE hh mm ss SimpleDateFormat f1 new SimpleDateFormat yyyy MM dd EEEE hh mm ss System out println f format date System out println f1 format date Date d1 parseDate 12 23 2008 MM dd yyyy System out println d1 Date d2 parseDate 2008 12 25 10 53 54 yyyy MM dd hh mm ss System out println d2 通过编译得出如下结果 3 完成教材 P431 实验 5 2 import java io BufferedReader import java io import java util regex public class EmailSpider public static void main String args try BufferedReader br new BufferedReader new FileReader d test txt String line while line br readLine null parse line catch FileNotFoundException e e printStackTrace catch IOException e e printStackTrace private static void parse String line Pattern p Ppile w w w 编译正则 表达式 Matcher m p matcher line 匹配邮箱 地址 while m find System out println m group 打印 匹配的邮箱地址 通过编译得出如下结果 4 完成教材 P434 实验 6 1 6 2 和 6 3 6 1 package di6 public class Magics public static void main String args int i 0 int j 0 int m 0 int n 5 j n 1 2 1 int a new int n n a i j m 第一个数在第一行正中 while m 1 i i 2 j j 1 if i n 1 超出方阵右边界 则新位置取应 选行的最左一个位置 j j n a i j m for i 0 i n i for j 0 j n j System out print a i j t System out println 通过编译得出如下结果 6 2 package oic circle public class MatrixDemo public static void main String args int a1 1 2 3 4 5 6 int b1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年电机工程师备考题库及答案解析
- 2025年光伏电站设计师资格考试《光伏电站设计与工程实施》备考题库及答案解析
- 软件开发外包合同补充协议2025年
- 全职翻译合同协议2025年
- 汽车租赁使用合同协议2025年保险条款
- 金融行业数据合作合同协议2025
- 塑料厂子转让合同范本
- 多个合同同时作废协议
- 土地承包抵押合同范本
- 外贸工厂英文合同范本
- 阿甘正传英文台词学习:高中英语课文教学教案
- 第1节 了解网页与网站说课稿-2025-2026学年初中信息技术(信息科技)第三册粤教版(广州)
- 地下管廊施工围挡与隔离方案
- 【《盐酸小檗碱缓释片生产工艺设计》9800字(论文)】
- 韦尼克脑病护理查房
- 电工法规知识培训课件
- 2025年监狱系统面试模拟题及案例分析
- 检察开放日课件
- 调节阀基础知识培训课件
- HB20542-2018航空用高闪点溶剂型清洗剂规范
- 智能康复步态训练系统创新创业项目商业计划书
评论
0/150
提交评论