已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成绩: 面向对象原理与Java实践课程实验报告实验2:继承与接口姓 名 _ _ 班 级 _ _ 学 号 _ _ 实验地点 _ _ 实验时间 _ _ 指导教师 _ _ 一、实验目的:l 掌握类的继承机制,掌握成员变量的隐藏与方法的重写l 掌握接口的定义和实现方法二、实验要求:l 复习类的继承以及接口的设计方法l 注意保证类的封装性l 编写程序完成以下实验内容并上交实验报告三、实验内容:1、P153:习题42、P153:习题53、P153:习题64、在程序包packageOne中编写至少含一个方法的公有接口InterfaceOne。在程序包packageTwo中定义公有类SuperClass,该类含有一个受保护的内部类InnerClass,这个类实现接口InterfaceOne。在程序包packageThree中定义公有类SubClass继承SuperClass,类SubClass定义一个返回类型为InterfaceOne的方法返回内部类InnerClass的对象实例。请正确使用程序包组织以上类和接口,编译并运行,并观察编译器生成的字节码文件的命名方式。四、设计思路:习题4的设计思路是设计一个抽象类作为父类,并设计相关字段以及计算成绩等级的抽象方法,然后再设计本科生类和研究生类作为子类继承,并且各自实现其计算成绩等级的抽象方法,最终将结果输出。习题5的设计思路跟习题4相同,只需额外设计一个枚举类存储学生的成绩等级,并对相关代码作少许修改即可。习题6的设计思路是习题4的延伸,在习题4的类结构基础上,将原来的计算成绩等级的抽象方法提取出来,放在一个公有接口中,然后再分别设计计算本科生和研究生成绩等级的类实现接口的抽象方法。五、程序源代码:习题4的源代码:package Package_4;public abstract class Student String Name=;String Stu_type=;int C_score;int English_score;int Java_score;int score;String sco_Level=;public Student(String name,String stu_type,int sco1,int sco2,int sco3)Name=name;Stu_type=stu_type;C_score=sco1;English_score=sco2;Java_score=sco3;score=(sco1+sco2+sco3)/3;package Package_4;public class Undergraduate extends Studentpublic Undergraduate(String name,String stu_type,int sco1,int sco2,int sco3)super(name,stu_type,sco1,sco2,sco3);if(score=85&score=75&score=65&score=60&score=0&score60)sco_Level=不及格;elsesco_Level=未知等级;static void Output(Undergraduate udg)System.out.println(*本科生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; i=90&score=80&score=70&score=60&score=0&score60)sco_Level=不及格;elsesco_Level=未知等级;static void Output(Postgraduate pg)System.out.println(*研究生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; i=85&score=75&score=65&score=60&score=0&score60)sco_Level=Sco_Level.E;elsesco_Level=Sco_Level.X;static void Output(Undergraduate udg)System.out.println(*本科生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; i=90&score=80&score=70&score=60&score=0&score60)sco_Level=Sco_Level.E;elsesco_Level=Sco_Level.X;static void Output(Postgraduate pg)System.out.println(*研究生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; i=85&score=75&score=65&score=60&score=0&score=90&score=80&score=70&score=60&score=0&score60)sco_Level=不及格;elsesco_Level=未知等级;return sco_Level;package Package_6;public abstract class Student String Name=;String Stu_type=;int C_score;int English_score;int Java_score;int score;String sco_Level=;public Student(String name,String stu_type,int sco1,int sco2,int sco3)Name=name;Stu_type=stu_type;C_score=sco1;English_score=sco2;Java_score=sco3;score=(sco1+sco2+sco3)/3;package Package_6;public class Undergraduate extends Studentpublic Undergraduate(String name, String stu_type, int sco1, int sco2,int sco3) super(name, stu_type, sco1, sco2, sco3);ugd_Level ugd_level=new ugd_Level();sco_Level=ugd_level.getLevel(score);static void Output(Undergraduate udg)System.out.println(*本科生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; iudg.length;i+)System.out.print(udgi.Name);System.out.print(t+udgi.Stu_type);System.out.print(t+String.valueOf(udgi.C_score);System.out.print(t+String.valueOf(udgi.English_score);System.out.print(t+String.valueOf(udgi.Java_score);System.out.print(t+String.valueOf(udgi.score);System.out.println(t+udgi.sco_Level);System.out.println();package Package_6;public class Postgraduate extends Studentpublic Postgraduate(String name, String stu_type, int sco1, int sco2,int sco3) super(name, stu_type, sco1, sco2, sco3);/ TODO Auto-generated constructor stubpg_Level pg_level=new pg_Level();sco_Level=pg_level.getLevel(score);static void Output(Postgraduate pg)System.out.println(*研究生*);/System.out.println();System.out.print(姓名);System.out.print(t+学生类型);System.out.print(t+C语言成绩);System.out.print(t+英语成绩);System.out.print(t+Java成绩);System.out.print(t+平均分);System.out.println(t+成绩等级);for(int i=0; ipg.length;i+)System.out.print(pgi.Name);System.out.print(t+pgi.Stu_type);System.out.print(t+String.valueOf(pgi.C_score);System.out.print(t+String.valueOf(pgi.English_score);System.out.print(t+String.valueOf(pgi.Java_score);System.out.print(t+String.valueOf(pgi.score);System.out.println(t+pgi.sco_Level);System.out.println();package Package_6;public class Test public static void main(String args) Undergraduate udg=new Undergraduate5;udg0=new Undergraduate(小明,本科生,25,95,74);udg1=new Undergraduate(小红,本科生,60,82,82);udg2=new Undergraduate(小白,本科生,64,49,27);udg3=new Undergraduate(小黑,本科生,94,77,89);udg4=new Undergraduate(小军,本科生,91,84,73);Postgraduate pg=new Postgraduate5;pg0=new Postgraduate(小明,本科生,25,95,74);pg1=new Postgraduate(小红,本科生,60,82,82);pg2=new Postgraduate(小白,本科生,64,49,27);pg3=new Postgraduate(小黑,本科生,94,77,89);pg4=new Postgraduate(小军,本科生,91,84,73);Undergraduate.Output(udg);Postgraduate.Output(pg);第4题的源代码:package PackageOne;public interface InterfaceOne void OutPut();package PackageOne;import PackageThree.SubClass;public class test public static void main(String args) SubClass sc=new SubClass();InterfaceOne ifo= sc.getInnerclass();ifo.OutPut();package PackageThree;import PackageOne.InterfaceOne;imp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贵州黔东南州镇远县青溪镇鸡鸣村农村集体经济组织职业经理人选聘1人笔试考试备考试题及答案解析
- 2025江苏南京交通技师学院招聘高层次人才3人考试笔试模拟试题及答案解析
- 2025年丽江市永胜县委政法委(县法学会)招聘公益性岗位工作人员(1人)考试笔试模拟试题及答案解析
- 2025福建省水投数字科技有限公司第三批招聘1人考试笔试参考题库附答案解析
- 2025年陕煤韩城矿业有限公司招聘(500人)考试笔试备考题库及答案解析
- 2025广东韶关市新丰县医疗卫生类急需紧缺专业人才招聘29人(第三批)笔试考试备考题库及答案解析
- 2025福建厦门市集美区侨英小学非在编教师招聘1人考试笔试备考试题及答案解析
- 2026江苏镇江市丹徒区教育局所属学校“才荟丹徒”校园招聘教师30人考试笔试模拟试题及答案解析
- 2025龙虎山景区招聘金牌导游员2人考试笔试参考题库附答案解析
- 2025年新能源行业企业数字化转型与能源行业竞争格局研究报告
- 机械设计 课件 第10章联轴器
- 【《传动齿轮的加工工艺设计》6800字】
- 螺蛳粉文化与发展研究
- 北京化工大学管理人员及本科生辅导员招聘考试真题2024
- 虚拟电厂参与电力市场的交易模式
- 2025至2030中国潜水员水中推进器(DPV)行业深度研究及发展前景投资评估分析
- 2025黑龙江双鸭山市煤炭生产安全管理局招聘急需紧缺事业单位工作人员25人参考题库附答案解析
- 备战中考物理-电路类问题-培优-易错-难题练习(含答案)及答案
- 民警进校园开展安全教育课件
- 中国电力科学研究院:中欧能源技术创新合作储能领域工作进展及合作建议
- 2025简单厂房租赁合同示例
评论
0/150
提交评论