还剩20页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
《继承和派生类》ppt课件•继承和派生类的基本概念•继承的方式•派生类的构造函数和析构函数•继承中的访问权限控制目•继承和派生的应用场景录contents01CATALOGUE继承和派生类的基本概念继承的定义继承是面向对象编程中的一个通过继承,子类可以继承父类继承有助于代码重用和实现多重要概念,它允许一个类(子的所有非私有属性和方法,并态性,提高软件的可维护性和类)继承另一个类(父类)的且可以扩展或覆盖它们可扩展性属性和方法派生的定义派生是指从一个已有的类(基类)派生类可以继承基类的所有非私通过派生,可以创建更具体或更派生出一个或多个新类(派生类)有属性和方法,并且可以添加新复杂的类,以满足特定的需求的过程的属性和方法,或者重写基类的方法继承和派生的关系继承和派生是密切相通过合理地使用继承关的概念,通常一起和派生,可以提高软使用件的设计质量和开发效率继承是实现代码重用和多态性的重要手段,而派生则是创建新类的基础02CATALOGUE继承的方式公有继承公有继承是C中最常用的继承方式,它表示基类的公有成员在派生类中保持公有访问权限当一个类从另一个类公有继承时,派生类可以访问基类的所有公有成员和保护成员公有继承时,基类的公有成员在派生类中作为公有成员使用,基类的保护成员在派生类中作为保护成员使用私有继承私有继承表示基类的公有和保护当一个类从另一个类私有继承时,私有继承时,基类的公有成员在成员在派生类中保持私有访问权派生类只能访问基类的所有私有派生类中作为私有成员使用,基限成员和保护成员类的保护成员在派生类中作为保护成员使用保护继承保护继承表示基类的所有成员(公有、保护继承时,基类的公有成员在派生保护和私有)在派生类中保持保护访类中作为保护成员使用,基类的保护问权限成员在派生类中作为保护成员使用当一个类从另一个类保护继承时,派生类只能访问基类的所有保护成员和私有成员03CATALOGUE派生类的构造函数和析构函数派生类的构造函数派生类构造函数调用顺序先调用基类构造函数,再调用派生类构造函数派生类构造函数可以覆盖基类构造函数如果基类有带参数的构造函数,派生类可以定义一个与基类带参数的构造函数相同签名的构造函数,以覆盖基类的构造函数派生类构造函数可以使用默认参数在派生类构造函数中,可以为基类构造函数的参数提供默认值,以简化基类构造函数的调用派生类的析构函数派生类析构函数调用顺序01先调用派生类析构函数,再调用基类析构函数派生类析构函数可以覆盖基类析构函数02如果基类有析构函数,派生类可以定义一个与基类析构函数相同签名的析构函数,以覆盖基类的析构函数派生类析构函数不能使用默认参数03析构函数不能有默认参数,因此在派生类中不能为基类析构函数的参数提供默认值04CATALOGUE继承中的访问权限控制公有访问权限公有访问权限允许派生类直接访问基类的公有成员在派生类中,可以通过基类的公有成员函数来访问基类的公有数据成员公有访问权限使得基类和派生类之间的信息交互更加方便,但也可能带来安全风险,因为派生类可以随意修改基类的公有成员私有访问权限私有访问权限限制了派生类对基类成基类的私有成员和私有成员函数在派员的访问权限生类中都是不可访问的只有基类的公有成员函数才能被派生私有访问权限可以提高代码的安全性类调用,以间接访问基类的私有成员和封装性,但也可能导致基类和派生类之间的信息交互变得复杂保护访问权限保护访问权限介于公有访问权限和私有基类的保护成员和保护成员函数在派生保护访问权限可以提供一定的安全性和访问权限之间类中是可访问的,但只能被基类和派生封装性,同时又不会过于限制基类和派类访问生类之间的信息交互05CATALOGUE继承和派生的应用场景类库的设计总结词类库设计中,继承和派生可以使得代码复用,减少重复劳动,提高开发效率详细描述在类库设计中,通过继承和派生可以创建一系列具有层次关系的类基类定义了一组通用属性和方法,派生类继承这些属性和方法,并可以添加或覆盖它们以实现特定的功能这种设计模式使得代码更加模块化、可维护和可扩展游戏开发中的角色系统设计总结词游戏开发中,角色系统设计可以通过继承和派生创建丰富的角色类型,提高游戏的可玩性和趣味性详细描述在游戏开发中,角色系统设计是至关重要的通过继承和派生,可以创建一系列具有层次关系的角色类,例如基础角色、英雄角色、怪物角色等这些角色类可以共享一些通用的属性,如生命值、攻击力等,同时也可以添加各自特有的属性或技能,从而丰富游戏的内容和玩法系统框架的设计总结词系统框架设计中,继承和派生有助于构建层次清晰、易于维护的软件架构详细描述在系统框架设计中,继承和派生可以使得软件架构更加层次化和模块化通过合理地定义基类和派生类,可以将系统的各个组件有机地组织在一起,形成一个清晰、易于维护的软件架构这有助于提高软件的可扩展性和可维护性,降低软件开发的复杂度THANKS感谢观看。
个人认证
优秀文档
获得点赞 0