- 1、本文档共58页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
For pers onal use only in study and research; not for
commercial use
蒅实验5继承与接口
莃[实验目的]
蒂1、掌握java继承中父类及其子类的定义方法。
螆2、掌握子类重写父类同名方法的方法。
薅3、掌握接口的用法。
螄(1)学习如何定义接口 ;
袀(2)掌握接口的实现方式;
蝿(3)使用实现了接口的类;
薅(4) 理解接口与抽象类的区别。
袁[实验要求]
1、
2、 蚂复习理论教学中所学的内容。
3、
4、 薈认真进行实验预习,查阅参考书,书写源程序,书写实验预习报告。
5、
6、蚅认真总结实验并书写实验报告。
节[实验课时]2学时
聿[实验教学方式]学生上机实验,教师随堂指导。
莇[实验内容]
1、
2、螅类的继承性练习
蚃 【新类可从现有的类中产生, 并保留现有类的成员变量和方法并可根据需要对它
们加以修改。新类还可添加新的变量和方法。这种现象就称为类的继承。
螁 当建立一个新类时,不必写出全部成员变量和成员方法。只要简单地声明这个类
是从一个已定义的类继承下来的, 就可以引用被继承类的全部成员。 被继承的类称为父
类或超类(superclass ),这个新类称为子类。
莀 Java提供了一个庞大的类库让开发人员继承和使用。设计这些类是出于公用的
目的,因此,很少有某个类恰恰满足你的需要。 你必须设计自己的能处理实际问题的类,
如果你设计的这个类仅仅实现了继承, 则和父类毫无两样。所以,通常要对子类进行扩
展,即添加新的属性和方法。这使得子类要比父类大,但更具特殊性, 代表着一组更具
体的对象。继承的意义就在于此。 】【】中的读完删掉不作为实验报告的一部分
袅(一)创建将被继承的类
肃(1)程序源代码如下。
艿 public class EXP3_7
羅 protected Stri ng xm; // 姓名,具有保护修饰符的成员变量
蒄 protected int xh;〃 学号
羁 void setdata(Stri ng xm,i nt xh) // 设置数据的方法
TOC \o "1-5" \h \z 羇 {
肅 此处添加所需代码
蚁 }
荿 public void prin t() // 输出数据的方法
蚆 {
膄 System.out.pri ntl n( xm+", "+xh);
肂 }
賺 }
(2)
(3)蝿编译源程序。
膄 public class EXP3_7 {
蒃
protected
String xm; //姓名,具有保护修饰符的成员变量
蕿
protected
int xh ; // 学号
蒈
void setdata(Stri ng xm,
int xh) //设置数据的方法
芄
{
袄
this
.xh =xh;
-++- 芁
this
.xm=xm;
芇}
莄 public void print() //输岀数据的方法
芅{
螈
螈 System. out .println( xm+", " +xh);
芀}
蒄}
莂(二)创建将被继承的类
蒀⑴ 程序功能:通过EXP3_7类产生子类EXP3_8其不仅具有父类的成员变量 xm(姓名)、
xh (学号),还定义了新成员变量 xy (学院)、bj (bj)。在程序中调用了父类的print
方法,同时可以看出子类也具有该方法。
肇(2)程序源代码如下。
薄 class EXP3_8 exte nds EXP3_7{
螂 此处定义新的成员变量,均为 protected类型
膂 public static void main( Stri ng args[]){
袇 EXP3_7 p1 = new EXP3_7();
蚄 p1.setdata(" 李四",12321);
膃 p1.pri nt();
蚀 EXP3_8 s1 = new EXP3_8();
薆 s1.setdata(" 张三",12345); // 调用父类的成员方法
蚄 s1.xy="山西大学计算机学院";//访问本类的成员变量
薄 s1.bj="2008级计算机科学与技术";II访问本类的成员变量
莂 sl.pri nt();
虿 System.out.pri nt(s1.xm+", "+s1.xy+", "+s1.bj);
EXP3_7 pl =new EXP3_7();p1.setdata("李四 “ ,12321);pl.pri nt();EXP3 8 si =new EXP3_8();si.setdata("张三 “,12345);//调用父类的成员方法
EXP3_7 pl =
new EXP3_7();
p1.setdata(
"李四 “ ,12321);
pl.pri nt();
EXP3 8
文档评论(0)