多态性
2010-03-20 14:15
155 查看
多态是指同样的消息被不同类型的对象接受时导致不同的行为,所谓消息是指对类的成员函数的调用,不同的行为是指不同的实现,也就是调用了不同的函数。
面向对象的多态性可以分为四类:重载多态、强制多态、包含多态和参数多态。
绑定:确定操作的具体对象的过程。(联编)
编译时的多态和运行时的多态。
运算符重载是对已有的运算符赋予多重含义,使一个运算符作用于不同类型的数据时导致不同的行为。其实质就是函数重载。重载形式有两种:重载为类的成员函数和重载为类的友元函数。一般的语法形式为:
(friend) 函数类型 operate 运算符(形参表){ 函数体}
当运算符重载为类的成员函数时,函数的参数个数要比原来的操作数个数要少一个(后置“++”、“——”除外); 当重载为类的友元函数时,参数个数与原参数个数相同。
前置单目运算符和后置单目运算符的重载最主要的区别就在于重载函数的形参。语法规定,前置单目运算符重载为成员函数时没有形参,而后置单目运算符重载为成员函数时需要有一个int型形参。
实例:复数类加减法运算符重载——成员函数形式。
面向对象的多态性可以分为四类:重载多态、强制多态、包含多态和参数多态。
绑定:确定操作的具体对象的过程。(联编)
编译时的多态和运行时的多态。
运算符重载是对已有的运算符赋予多重含义,使一个运算符作用于不同类型的数据时导致不同的行为。其实质就是函数重载。重载形式有两种:重载为类的成员函数和重载为类的友元函数。一般的语法形式为:
(friend) 函数类型 operate 运算符(形参表){ 函数体}
当运算符重载为类的成员函数时,函数的参数个数要比原来的操作数个数要少一个(后置“++”、“——”除外); 当重载为类的友元函数时,参数个数与原参数个数相同。
前置单目运算符和后置单目运算符的重载最主要的区别就在于重载函数的形参。语法规定,前置单目运算符重载为成员函数时没有形参,而后置单目运算符重载为成员函数时需要有一个int型形参。
实例:复数类加减法运算符重载——成员函数形式。
相关文章推荐
- Java--多态性之抽象类和接口
- java多态性
- 多态性与虚函数
- Java面向对象程序设计多态性示例
- 多态性类的友元重载相关注意点
- C# 多态性的深入理解
- 关于Java运行时多态性的实现的猜想
- 【学习笔记】Thinking in java (第三版)第七章 多态性(Polymorphism)
- (原创)深入剖析:C++“多态性”在编译器中的实现
- 多态性和动态联编的分析
- 多态性C++[转]
- C/C++学习----第三章 多态性和虚函数
- C# 多态性の勉強
- java的多态性
- 多态性 虚函数 抽象类
- 多态性之静态联编
- 如何使用多态性数组
- C#中的多态性-回归自然,学习C#基础知识
- PHP 5.0中多态性的实现方案浅析
- JAVA多态性我和网友交流实录