收藏 分享(赏)

Java语言程序设计+第四章.ppt

上传人:gsy285395 文档编号:4529231 上传时间:2019-01-02 格式:PPT 页数:17 大小:506.50KB
下载 相关 举报
Java语言程序设计+第四章.ppt_第1页
第1页 / 共17页
Java语言程序设计+第四章.ppt_第2页
第2页 / 共17页
Java语言程序设计+第四章.ppt_第3页
第3页 / 共17页
Java语言程序设计+第四章.ppt_第4页
第4页 / 共17页
Java语言程序设计+第四章.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、1,Java面向对象程序设计,第4章 类的特性,2,本章主要内容,理解父类与子类的继承关系 理解继承中发生的方法重写 重写Object类的toString( )方法 使用super关键字访问父类成员 访问修饰符的权限 理解抽象类 理解内部类,3,继承现象,父 类,子类,4,类的继承关系,演示继承,5,类的继承关系,Mammal类 属性:legsNumber、height、weight、color 方法:breed( )等,Dog类属性:legNumber等、hasTail 方法: breed( )等、keepHouse( )等,Cat类属性:legNumber等 方法: breed( )等、c

2、limb( )等,6,继承的概念,继承是体现了类与类之间的关系,在现有类的基础上建立新类的处理过程称为继承。 直接或间接被继承的类都是父类,子类继承父类的属性和行为。父类也称超类或基类,子类也称派生类。 子类复用父类的代码,同时也允许子类增加自己特有的属性和方法。这样使得程序结构的设计更加清晰,达到既减少程序的编码量,同时降低程序维护的工作量。 父类的私有属性与方法不传递给子类。 Java不允许出现多重继承。,7,方法重写,方法重写(overriding)是指在子类中存在与父类完全相同的方法,则发生方法的覆盖,即子类可以改写父类方法所实现的功能。 自然界中,同一种行为具有不同实现方式的现象很多

3、。如:石墨与金刚石。,演示方法重写,8,方法重写,发生在父类与子类中 方法名称相同 参数列表相同 返回类型相同 方法实现不同 方法访问权限不能缩小,如:父类中被重写的方法访问权限为public,子类重写方法时不能缩小为private、protected或默认。 子类重写方法不能抛出新的异常。,9,Object类 一切类的父类,Object类存在与java.lang包中,因此当定义一个新类而不指明其父类时,该类默认继承Object类。 Object类常用方法: boolean equals(Object obj) :指示其他某个对象是否与此对象“相等”。 String toString( ) :

4、返回该对象的字符串表示。定义实体类时,通常要重写上述两个方法。,演示重写Object类的方法,10,继承中发生方法重写对构造方法的影响,每个类都会有自己的构造方法,即使没有显示定义,系统也会提供一个默认的无参构造方法。 构造方法名称与类名同名,因此父类与子类的构造方法名称必然不同,不会发生方法重写。,演示继承时的构造方法,11,super关键字,执行创建一个子类实例时, Cat cat = new Cat( ); 首先,调用执行父类的无参构造方法;然后调用执行子类的无参构造方法。原因是子类构造方法隐式了第一句代码super( ),即:public Cat() super( ); /运行子类的构

5、造方法之前首先调用父类的构造方法 super 关键字始终指向当前类的父类,可以使用该关键字显式调用父类的有参构造方法或成员方法。,演示继承时的构造方法,12,访问修饰符的权限,private:访问权限仅限于类内。 public:对外完全公开。 protected:同包或异包子类可以访问。 无修饰符:限于同包能访问。,演示无修饰符和protected,13,成员内部类,构造一个内部类对象必须先构造一个外部类对象,然后通过外部类对象的引用“.new”构造内部类对象。示例如下:Outer outer = new Outer( );Outer.Inner in = outer.new Inner();

6、 在内部类中可以访问外部类的成员变量:Outer.this.name 成员内部类中不能有静态的变量。,演示成员内部类,14,局部内部类,定义在外部类方法中的内部类称为局部内部类,不能使用访问修饰符。但是可以使用abstract和final修饰符 局部内部类的范围是在该方法内部。 可以访问外部类的属性;还可以访问外部类的有效的局部变量,但是要求这个局部变量必须是final的。,演示局部内部类,15,内部类的作用,内部类可以访问外部类的私有(private)成员。 接口是公开的,把接口的实现类作为内部类隐藏起来,强制用户通过接口来访问接口的实现类,强制达到弱耦合性。 配合接口实现多继承,这是使用内部类的主要原因。,16,匿名内部类,匿名内部类是一种特殊的局部内部类。 用来继承一个类或者实现一个接口,而且只会创建这个内部类的一个对象。 可以出现在方法的返回类型中,也可以出现在方法的参数中。 不能定义构造方法。,演示匿名内部类,17,本节小结,理解父类与子类的继承关系 理解继承中发生的方法重写 重写Object类的toString( )方法 使用super关键字访问父类成员 访问修饰符的权限 理解抽象类 理解内部类,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 网络科技 > Java

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报