《java类的层次结构》PPT课件

《java类的层次结构》PPT课件

ID:39357123

大小:273.11 KB

页数:17页

时间:2019-07-01

《java类的层次结构》PPT课件_第1页
《java类的层次结构》PPT课件_第2页
《java类的层次结构》PPT课件_第3页
《java类的层次结构》PPT课件_第4页
《java类的层次结构》PPT课件_第5页
《java类的层次结构》PPT课件_第6页
《java类的层次结构》PPT课件_第7页
《java类的层次结构》PPT课件_第8页
《java类的层次结构》PPT课件_第9页
《java类的层次结构》PPT课件_第10页
资源描述:

《《java类的层次结构》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Java语言程序设计第5章类的继承5.3类之间的层次结构引言:一个子类继承了父类,同时子类还可以是其他类的父类,这样形成了一个类之间的继承关系图。5.3.1类的层次结构图类A如果有两个子类AA和AB,类AA如果有一个子类AAA,类AB如果有一个子类ABA,它们之间的关系构成图5-4左边的部分,类似地由B类和其子类构成了图5-4中间的部分,还可能有其他类也构成了类似的关系。5.3.1类的层次结构ObjectBA…AAABBAAAAABABAABBBBA……图5-4类的层次结构1、Object类:类是分层次的,最顶层的是Object类。在Java语言中,所有类都直接或间接地

2、继承了在JavaAPI中定义的Object类,Object类位于java.lang包中。在一个类定义中,如果没有直接指出其父类,则Java语言默认其父类为Object。例如下面定义了一个类Point:classPoint{floatx;floaty;}它与下面定义是等价的:classPointextendsObject{floatx;floaty;}1、Object类:Java中所有类都是由Object类导出的,因此在Object类中的public方法可以被任何一个Java类继承。这样,程序中的任何一个Java对象都可以调用这些方法。Object类中常用的两个实例方法是

3、:equals():equals方法等价于==运算符。比较运算符==用来比较两个简单数据类型的值是否相等,或者判断两个对象是否具有相同的引用值。toString():方法将返回代表这个对象值的一个字符串。实例:01classObj{02intx=12;03}0405classTestObj{06publicstaticvoidmain(String[]args){07Obja=newObj();08Objb=newObj();09Objc=b;//c和b引用内存中相同的对象10System.out.println(a.toString());11System.out.p

4、rintln(a);12System.out.println(a.equals(b));13c.x=24;14System.out.println(b.equals(c));15System.out.println(b.x);16}17}3、父类对象和子类对象之间的转换子类是对父类的具体化,如我们说“狗是一种哺乳动物”,即就是说在哺乳动物这个大类中,狗只是其中的一种哺乳动物,在Java语言中就是说哺乳动物类(Mammal)是狗类(Dog)的父类。如果反过来说“哺乳动物是一种狗”就不对了,因为马、羊等很多动物都是哺乳动物。定义哺乳动物类:classMammal{…}定义狗

5、是一种哺乳动物类:classDogextendsMammal{…voidrun}程序中说明了如下的一个动物类对象的引用:Mammalm;程序中创建了一个狗类的实例:Dogdog1=newDog();如果有如下的赋值:m=dog1;这就好比说“狗是一种哺乳动物”,因此这种赋值是正确,或者用下面的方式书写:Mammalm=newDog();子类对象赋给父类对象注意1:子类对象赋给父类对象时进行自动类型转换。注意2:当子类对象赋值给父类对象后,父类对象除了可以引用自身所在类的成员外,还能引用和父类同名的成员变量(父类)和方法(子类)。观察下面的程序的运行结果:classFat

6、her{inta=1,b=2;voidshow(){System.out.println(a+""+b);}}classSonextendsFather{intb=3,c=4;voidshow(){System.out.println(a+""+b+""+c);}}classExp{publicstaticvoidmain(String[]args){Fatherfa=newFather();fa.show();Sons=newSon();s.show();Fatherfb;fb=s;fb.show();System.out.println(fb.a+""+fb.b);

7、//System.out.println(fb.a+""+fb.b+""+fb.c);System.out.println(s.a+""+s.b+""+s.c);}}Dogdog2=newMammal();这就好像说“哺乳动物是狗”,我们知道哺乳动物很多,只能说狗是哺乳动物里的一种,而不能说哺乳动物都是狗。因此,在Java语言中这种赋值是不允许的,如果的确要进行这样的赋值,只能进行强制类型转换:子类对象=(子类名)父类对象dog1=(Dog)m;父类对象赋给子类对象上机作业:题目:开发一个员工管理系统,员工(Employee)有三个属性:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。