学期(如2024-2025-1) 20241428) 《计算机基础与程序设计》第8周学习总结
学期(如2024-2025-1) 学号(如:2024142) 《计算机基础与程序设计》第8周学习总结
作业信息
这个作业属于哪个课程 | <班级的链接>(如2024-2025-1-计算机基础与程序设计) |
---|---|
这个作业要求在哪里 | <作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业) |
这个作业的目标 | 面向对象语言三要素,汇编、编译、解释、执行 |
作业正文 | https://i.cnblogs.com/posts/edit;postId=-1;templateId=2392 |
教材学习内容总结
功能设计(Functional Design)
需求分析:确定系统需要实现的功能和性能要求。
模块划分:将系统分解为模块,每个模块负责一组相关的功能。
接口定义:定义模块之间的接口,包括输入输出参数和数据流。
流程图:使用流程图等工具描述模块的逻辑流程。
数据流图:描述数据在系统中的流动路径。
伪代码:编写伪代码来描述模块的逻辑。
功能分解:将复杂功能分解为更小的、可管理的部分。
功能测试:设计测试用例来验证每个功能模块的正确性。
面向对象设计(OOD)
对象识别:识别系统中的对象,这些对象是系统中需要建模的实体。
类与对象:定义类来描述对象的属性和行为。
继承:使用继承来表示类之间的层次关系,共享和扩展属性和方法。
封装:将数据(属性)和操作数据的方法(行为)封装在类中,隐藏内部实现细节。
多态:允许使用统一的接口来处理不同类型的对象。
关联:定义类之间的关系,如关联、聚合和组合。
接口:定义类之间的交互接口,明确哪些方法可以被外部访问。
设计模式:应用设计模式来解决常见的设计问题,提高代码的可重用性和可维护性。
UML图:使用统一建模语言(UML)图来可视化类图、序列图、用例图等。
系统架构:定义系统的高层结构,包括组件、子系统和它们之间的关系。
重构:在不改变外部行为的前提下,调整代码结构以提高内部质量。
测试:设计测试用例来验证类和对象的行为是否符合预期。
封装(Encapsulation)
数据隐藏:将对象的数据(属性)和操作数据的方法(行为)捆绑在一起,并隐藏内部实现细节。
访问修饰符:使用访问修饰符(如private、protected、public)来控制对类成员的访问权限。
信息隐藏:只暴露必要的接口,隐藏内部状态和实现细节,减少耦合。
最小接口:提供尽可能少的接口,使得外部代码能够与对象交互,而不需要了解其内部实现。
数据抽象:通过接口展示对象的抽象特性,而不是具体的实现细节。
继承(Inheritance)
代码复用:允许新创建的类(子类)继承现有类(父类或超类)的属性和方法,减少代码重复。
层次结构:创建类之间的层次关系,子类可以扩展或修改父类的行为。
扩展性:子类可以添加新的属性和方法,或者重写父类的方法来扩展功能。
多态基石:继承是实现多态的基础,子类对象可以被当作父类对象使用。
方法重写:子类可以重写父类的方法,以提供特定的实现。
方法重载:在同一个类中,可以有多个同名方法,只要它们的参数列表不同。
多态(Polymorphism)
接口多态:允许不同的对象对同一消息做出响应,即同一个接口可以被不同的对象以不同的方式实现。
方法重写:子类重写父类的方法,使得同一个方法在不同的对象中有不同的行为。
方法重载:同一个类中可以有多个同名方法,只要它们的参数列表不同。
动态绑定:在运行时根据对象的实际类型来决定调用哪个方法。
抽象类和接口:使用抽象类和接口来定义多态行为的框架。
类型转换:在多态中,子类对象可以被当作父类对象使用,这涉及到向上转型(upcasting)和向下转型(downcasting)。
提高灵活性:多态提高了代码的灵活性和可扩展性,使得代码更容易维护和扩展。
教材学习中的问题和解决过程(先问 AI)