还剩17页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
C++面向对象程序设计课件第8章未讲CONTENTS•继承•多态•抽象类和接口•运算符重载01继承继承的概念继承是一种机制,允许一个类(派生类)继承另一个类(基类)的属性和方法通过继承,派生类可以重用和扩展基类的代码,提高代码的复用性和可维护性继承体现了“is-a”关系,即派生类是基类的特例或子类继承的方式公有继承(public)01基类的公有成员在派生类中保持公有,基类的保护成员在派生类中保持保护私有继承(private)02基类的公有和保护成员在派生类中都变为私有保护继承(protected)03基类的公有和保护成员在派生类中都变为保护继承的语法公有继承class派生类名:public基类名{...};私有继承class派生类名:private基类名{...};保护继承class派生类名:protected基类名{...};02多态多态的概念总结词多态是面向对象程序设计中的一个重要概念,它允许我们以统一的方式处理不同的数据类型详细描述多态允许我们使用父类指针或引用调用子类对象的方法,实现动态绑定通过多态,我们可以编写更加通用和可扩展的代码,提高代码的复用性和可维护性多态的方式总结词多态可以通过两种方式实现编译时多态和运行时多态详细描述编译时多态是通过函数重载实现的,编译器在编译时根据参数类型和数量确定要调用的函数而运行时多态则是通过虚函数实现的,编译器在编译时为父类指针或引用留出虚函数表的位置,运行时再根据实际对象的类型确定要调用的函数多态的语法总结词在C中,实现多态需要使用虚函数和纯虚函数详细描述虚函数使用关键字`virtual`声明,并在基类中声明为纯虚函数(没有实现)子类需要重写该虚函数并提供实现通过父类指针或引用调用该函数时,将根据实际对象的类型动态绑定到相应的实现上纯虚函数在基类中没有实现,子类必须重写并提供实现如果一个类包含纯虚函数,则该类被声明为抽象类,不能被实例化03抽象类和接口抽象类的概念抽象类通常包含一些纯虚函数,这些函数没有实现,派生类必须实现这些函数才能被实例化抽象类是一种特殊的类,它不能被实例化,只能作为其他类的基类抽象类用于定义接口,规定派生类必须实现的方法和属性抽象类的语法使用`virtual`关键字在派生类中实现纯虚声明纯虚函数,例如函数`virtual voidfoo=0;`在类定义中声明纯虚函数,但不提供实现接口的概念接口是一种抽象类型,它定义了一组方法,但没有实现这些方法接口用于规定一组类必须实现的方法,但不关心这些类的具体实现细节实现接口的类必须提供接口中定义的所有方法的实现04运算符重载运算符重载的概念01运算符重载是指允许用户自定义运算符的行为,使得用户可以自定义运算符的语义和操作方式02通过运算符重载,用户可以更加灵活地操作对象,提高代码的可读性和可维护性运算符重载的语法在C中,运算符重载的语法是在类定义中,通过在类成员函数前加上运算符关键字来实现例如,要重载加号运算符,可以在类定义中添加一个名为operator+的成员函数运算符重载的注意事项运算符重载应当遵循一定的规运算符重载不能改变运算符的运算符重载应当符合自然语义,则和限制,以保证代码的可读优先级和结合性,也不能改变避免产生歧义和混淆性和可维护性运算符的参数个数和类型谢谢您的聆听THANKS。
个人认证
优秀文档
获得点赞 0