欢迎来到天天文库
浏览记录
ID:57838408
大小:212.00 KB
页数:15页
时间:2020-03-31
《java实验报告材料8.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实用文档实验报告(2014/2015学年第2学期)课程名称JAVA程序设计实验名称抽象类和抽象方法实验时间2015年5月7日指导单位计算机学院/软件学院软件工程系指导教师周莉学生姓名班级学号学院(系)计算机软件学院专业计算机科学与技术实用文档实验名称抽象类和抽象方法指导教师周莉实验类型上机实验学时2实验时间2015-5-7一、实验目的1.掌握多态的实现2.掌握抽象类和抽象方法的定义和使用二、实验环境(实验设备)1.每位学生配备计算机一台2.计算机需安装好JDK和Jcreator三、实验内容1.首先编写一个抽象类,
2、要求该抽象类有3个抽象方法:Publicabstractvoidf(intx);Publicabstractdoubleg(doublex);Publicabstractdoubleh(doublex);然后分别给出这个抽象类的3个子类。要求:在应用程序主类中使用这些子类创建对象,再让它们的上转型对象调用方法f()、g()和h()。(1)源程序:abstractclassA{publicabstractvoidf(intx);publicabstractvoidg(intx,inty);publicabstrac
3、tdoubleh(doublex);实用文档}classA1extendsA{publicvoidf(intx){System.out.println(x);}publicvoidg(intx,inty){intz=x+y;System.out.println(z);}publicdoubleh(doublex){returnx*x;}}classA2extendsA{publicvoidf(intx){System.out.println("Hello:"+x);}publicvoidg(intx,inty){
4、intz=x-y;System.out.println(z);}publicdoubleh(doublex){实用文档returnMath.sqrt(x);}}classA3extendsA{publicvoidf(intx){System.out.println("你好:"+x);}publicvoidg(intx,inty){doublez=(double)x/y;System.out.println(z);}publicdoubleh(doublex){return1/x;}}publicclassZuoY
5、e5_2{publicstaticvoidmain(Stringargs[]){Aa=newA1();a.f(10);a.g(12,20);System.out.println(a.h(100));a=newA2();实用文档a.f(10);a.g(12,20);System.out.println(a.h(100));a=newA3();a.f(10);a.g(12,20);System.out.println(a.h(100));}}(2)实验结果:2.实用文档设计一个人员类(Person),其中包含一个方法
6、pay,代表人员的工资支出。再从Person类派生出助教类(Assistant)、讲师类(Instructor)、副教授类(AssistantProfessor)和教授类(Professor)。其中:工资支出=基本工资+授课时数*每课时兼课金。但助教基本工资为800,每课时兼课金25,讲师基本工资为1000,每课时兼课金35,副教授基本工资为1200,每课时兼课金40,教授基本工资为1400,每课时兼课金50。将Person定义为抽象类,pay为抽象方法,设计程序实现多态性。(1)源程序:abstractclas
7、sPerson{protectedStringname;protecteddoubleclassum;publicPerson(){this.name="";classum=0;}publicPerson(Stringname,doubleclassum){this.name=name;this.classum=classum;}abstractpublicdoublepay();实用文档publicStringtoString(){return"姓名:"+this.name+"t工资支出:"+this.pay
8、()+"";}}classAssistantextendsPerson{publicAssistant(Stringname,doubleclassum){super(name,classum);}publicdoublepay(){return800+classum*25;}}classInstructorextendsPerson{publicInstructor
此文档下载收益归作者所有