已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一.实验目的 了解接口,类,抽象类之间的不同,能够在其之间进行继承与实现 掌握文件的输入输出流,包括 scanner 类,字符流,字节流等 等的 运用,能够对文件进行基本的读出写入 二.实验内容 实验题目一: 设计 (1)形状接口、(2)积木块抽象类、(3)三角形类、正方形类、圆形类和矩形类, 其中(2)实现了(1),(3)继承了(2),然后编写主函数分别定义它们的对象, 并显示其值。 1 程序源代码 public class title4_1 public static void main(String args) Shape circle=new Circle(20),rect=new Rectangle(100,50); Shape square=new Square(10),tri=new Triangle(10,20,25); circle.showArea(); circle.showCircle(); rect.showArea(); rect.showCircle(); square.showArea(); square.showCircle(); tri.showArea(); tri.showCircle(); /形状接口 interface Shape public double getArea();/求面积 public double getCircle();/求周长 public void showArea(); public void showCircle(); /积木块抽象类 abstract class BuildingBlock implements Shape public void showArea() public void showCircle() /圆类 class Circle extends BuildingBlock private double r; public Circle(double r) this.r=r; /求面积 public double getArea() return Math.PI*this.r*this.r; /求周长 public double getCircle() return 2*this.r*Math.PI; public void showArea() System.out.println(“圆的半径为:“+this.r); System.out.println(“圆面积:“+this.getArea(); public void showCircle() System.out.println(“圆周长:“+this.getCircle(); System.out.println(); /定义长方形 class Rectangle extends BuildingBlock private double l,w; public Rectangle(double l,double w) this.w=w; this.l=l; public double getArea() return this.w*this.l; public double getCircle() return 2*(this.w+this.l); public void showArea() System.out.println(“长方形的长为:“+this.l+“ 宽为:“+this.w); System.out.println(“长方形面积:“+this.getArea(); public void showCircle() System.out.println(“长方形周长:“+this.getCircle(); System.out.println(); /定义正方形 class Square extends BuildingBlock private double a; public Square(double a) this.a=a; public double getArea() return this.a*this.a; public double getCircle() return 4*this.a; public void showArea() System.out.println(“正方形的边长为:“+this.a); System.out.println(“正方形面积:“+this.getArea(); public void showCircle() System.out.println(“正方形周长:“+this.getCircle(); System.out.println(); /定义三角形 class Triangle extends BuildingBlock private double a,b,c,q; public Triangle(double a,double b,double c) this.a=a; this.b=b; this.c=c; this.q=(this.a+this.b+this.c)/2; public double getArea() double q=(this.a+this.b+this.c)/2; return Math.sqrt(this.q*(this.q-this.a)*(this.q-this.b)*(this.q-this.c); public double getCircle() return this.a+this.b+this.c; public void showArea() System.out.println(“三角形三边长为 a=“+this.a+“ b=“+this.b+“ c=“+this.c); System.out.println(“三角形面积:“+this.getArea(); public void showCircle() System.out.println(“三角形周长:“+this.getCircle(); System.out.println(); 2实验结果 实验题目二: 已经存在一个文本文件“a.txt“,请使用 Scanner 类读取其内容, 并统计总分,分别显示出来。 该文件的各行内容格式是: 学生学号(int)t 学生姓名(String)tJava 考试成绩(double)rn 1程序源代码 import java.io.*; import java.util.*; public class title4_2 public static void main(String args) throws IOException Scanner sc=new Scanner(new File(“a.txt“),“UTF-8“); System.out.println(“学号 姓名 成绩“); String number=“; String name=“; String marks=“; double mark=0; while (sc.hasNext() number = sc.next(); name=sc.next(); marks=sc.next(); System.out.println(number+“ “+name+“ “+marks); mark=Double.parseDouble(marks)+mark; System.out.println(“总分 “+mark); 2.实验结果 实验题目三: 将杨辉三角形的结果保存到一个文本文件“c.txt”中。 1程序源代码 import java.io.*; public class title4_3 public static void main(String args) throws IOException int n=10; int a; a=new intn; for(int i=0;in;i+) ai=new inti+1; ai0=1; aii=1; for(int j=1;ji;j+) aij=ai-1j-1+ai-1j; BufferedWriter yanghui =new BufferedWriter(new FileWriter(new File(“b.txt“); for(int i=0;in;i+) for(int j=0;j=i;j+) System.out.print(“+aij+“t“); yanghui.write(Integer.toString(aij); yanghui.write(t); yanghui.write(r); System.out.println(); yanghui.close(); 2.试验结果 实验题目四: 有一个文本文件“c.txt“有多行内容,各行首部都包含一个行号 和冒号,请按行号对各行进行排序,并在尾部写入冒号和本行字符数,然后保 存在另一个文本文件“d.txt“之中。 比如:文件“c.txt“内容格式如下: 1: 西安交大召开创先争优活动总结大会 2: 教育部高校科研管理方法研讨会暨青委会西北片区成立大会在西安交. 3: 法国巴黎南十一大学代表团访问西安交大 4: 第 14 届亚洲地区英语语言测试研讨会在西安交大举行 1程序源代码 import java.io.*; import java.util.*; public class title4_4 public static void main(String args) throws IOException BufferedReader in=new BufferedReader(new FileReader(new File(“c.txt“); BufferedWriter out=new BufferedWriter(new FileWriter(new File(“d.txt“); char a=new char10; int i=0; String str; String c= new String10; int length; wh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中国民用航空飞行学院新津分院、广汉分院、洛阳分院招聘参考笔试题库及答案解析
- 购买棉服合同模板(3篇)
- 沟渠承包植树合同模板(3篇)
- 教学质量诚信担保承诺书(4篇)
- 游艇出海活动策划方案(3篇)
- 社工国学活动策划方案(3篇)
- 2026年江苏省镇江市单招职业倾向性考试题库及参考答案详解
- 酒店的门店管理制度包括(3篇)
- 美甲店光疗活动方案策划(3篇)
- 饭店营销方案价格(3篇)
- 中西医结合治疗类风湿关节炎疼痛
- 2025国际胰腺病学会急性胰腺炎修订指南解读课件
- 2025年微信社交生态系统发展与商业模式研究报告及未来发展趋势
- 雨课堂学堂云在线《中国马克思主义与当代(北京化工大学 )》单元测试考核答案
- 贵州省贵阳市2025-2026学年高三上学期11月质量监测化学试卷(含答案)
- 农作物秸秆知识培训课件
- 机场设备维修与保养操作手册
- (2025年)卫生法律法规的试题及答案
- 产品质量问题处理及反馈模板
- 2025年秋新教科版三年级上册科学全册知识点(新教材 )
- DB11-T 2209-2023 城市道路慢行系统、绿道与滨水慢行路融合规划设计标准
评论
0/150
提交评论