苹者演大孝 South China Agr icultur al Uni versity 第九章多态性
第九章 多态性
主要类容 ◆91延迟绑定 ◆9.2由继承实现多态性 ◆9.3利用接口是想多态性 ◆94排序 ◆9.5搜索 ◆9.6多态性设计 ◆9.7事件处理 ◆98文件选择对话框 9.9颜色选择对话框 ◆9.10滑动条
主要类容: ◆ 9.1 延迟绑定 ◆ 9.2 由继承实现多态性 ◆ 9.3 利用接口是想多态性 ◆ 9.4 排序 ◆ 9.5 搜索 ◆ 9.6 多态性设计 ◆ 9.7 事件处理 ◆ 9.8 文件选择对话框 ◆ 9.9 颜色选择对话框 ◆ 9.10 滑动条
91延迟绑定 ■通常一个引用变量的类型要与其引用的对象的类 相匹配。 ChessPiece bishop; ■引用变量的类型和该引用变量指向的对象必须是 兼容的,但不必完全相同。 ■多态性可以理解为多种形式,一个多态性引用是 可以在不同时间指向不同类型对象的引用变量。 ■利用多态性调用的方法能够由一个调用改变为另 个调用
◼通常一个引用变量的类型要与其引用的对象的类 相匹配。 ChessPiece bishop; ◼ 引用变量的类型和该引用变量指向的对象必须是 兼容的,但不必完全相同。 ◼多态性可以理解为多种形式,一个多态性引用是 可以在不同时间指向不同类型对象的引用变量。 ◼利用多态性调用的方法能够由一个调用改变为另 一个调用。 9.1 延迟绑定
■如下代码: obj.do工t(); ■如果obj引用是多态性,可以在不同时刻指向不同类型的对象 ■在一个程序执行的某个时刻可能会产生一个请求事件,要求执行 某段代码来完成一个方法调用,这种请求事件称为一个方法调用 与一个方法定义的绑定。 ■如果绑定发生在编译阶段,那么每次引用方法的代码都相同。 ■对于多态性引用,綁定要延迟到程序运行时才能执行,延迟的请 求事件称为延迟绑定或者动态绑定。 延迟绑定能给程序设计带来交大的灵活性。 ■在java中用继承方式和接口方式来建立多态性引用
◼ 如下代码: obj.doIt(); ◼ 如果obj引用是多态性,可以在不同时刻指向不同类型的对象。 ◼ 在一个程序执行的某个时刻可能会产生一个请求事件,要求执行 某段代码来完成一个方法调用,这种请求事件称为一个方法调用 与一个方法定义的绑定。 ◼ 如果绑定发生在编译阶段,那么每次引用方法的代码都相同。 ◼ 对于多态性引用,绑定要延迟到程序运行时才能执行,延迟的请 求事件称为延迟绑定或者动态绑定。 ◼ 延迟绑定能给程序设计带来交大的灵活性。 ◼ 在java中用继承方式和接口方式来建立多态性引用
92由继承实现多态性 ■当用类声明了一个引用变量时,该变量可以指向 该类的任何一个对象,此外还可以指向由继承关 系的任何对象。 ■比如:类 holida派生出一个类 christmas, 个 holiday类引用能够指向一个 christmas类变 Holiday Holiday day; day new christmas()i Christmas
5 9.2 由继承实现多态性 ◼当用类声明了一个引用变量时,该变量可以指向 该类的任何一个对象,此外还可以指向由继承关 系的任何对象。 ◼比如:类holiday派生出一个类christmas,一 个holiday类引用能够指向一个christmas类变 量。 Holiday day; day = new Christmas(); Holiday Christmas