当前位置: 首页 > news >正文

面向对象的题目

定义简单的类

需求:定义一个 Student 类,包含以下内容:属性:姓名(name)、年龄(age)、成绩(score,默认为 0)方法:
get_info():返回学生信息的字符串,格式为 “姓名:xxx,年龄:xxx,成绩:xxx”
update_score(new_score):修改学生成绩(要求新成绩必须是 0-100 之间的整数,否则不修改)

封装练习

需求:定义一个 BankAccount 类,模拟银行账户:私有属性:账户余额(__balance,初始值为 0)方法:
deposit(amount):存款(amount 必须为正数,否则提示 “存款金额无效”)
withdraw(amount):取款(amount 必须为正数且不超过余额,否则提示 “取款失败”)
get_balance():返回当前余额(通过此方法对外暴露余额,不能直接访问私有属性)

继承练习

需求:基于以下场景设计类:
父类 Vehicle(交通工具):
属性:品牌(brand)、颜色(color)
方法:run(),打印 “xxx(品牌)的 xxx(颜色)车在行驶”子类 Car(小汽车)继承 Vehicle:
新增属性:座位数(seats)
重写 run() 方法,打印 “xxx(品牌)的 xxx(颜色)小汽车,有 xxx 个座位,正在公路上行驶”子类 Bicycle(自行车)继承 Vehicle:
新增属性:是否电动(is_electric,布尔值)
重写 run() 方法,打印 “xxx(品牌)的 xxx(颜色)自行车,xxx 电动,正在骑行”(如果是电动则显示 “是”,否则显示 “不是”)

多态练习

需求:设计一个简单的 “形状计算” 程序:
父类 Shape(形状):
方法:get_area(),返回 0(作为基类,无具体实现)子类 Circle(圆形)继承 Shape:
属性:半径(radius)
重写 get_area():计算圆的面积(公式:π× 半径 ²,π 取 3.14)子类 Rectangle(矩形)继承 Shape:
属性:长(length)、宽(width)
重写 get_area():计算矩形的面积(公式:长 × 宽)
最后定义一个函数 print_area(shape),接收一个 Shape 子类对象,打印 “该形状的面积是:xxx”

类的交互

需求:模拟 “图书馆借阅” 场景:
Book 类:
属性:书名(title)、作者(author)、是否被借出(is_borrowed,默认为 False)
方法:get_status(),返回 “可借阅” 或 “已借出”Reader 类:
属性:姓名(name)、借阅的书籍列表(borrowed_books,初始为空列表)
方法:
borrow_book(book):借阅书籍(如果书籍未被借出,则添加到 borrowed_books,并修改书籍的 is_borrowed 为 True;否则提示 “该书已被借出”)
return_book(book):归还书籍(如果书籍在 borrowed_books 中,则移除并修改 is_borrowed 为 False;否则提示 “未借阅此书”)
测试:创建 2 本书、1 个读者,模拟借阅和归还操作,并打印结果
http://www.jsqmd.com/news/11873/

相关文章:

  • P11229 [CSP-J 2024] 小木棍题解
  • [HZOI] CSP-S模拟29
  • 初识pytorch:数据标准化及数据增强的transforms
  • 谈程序员如何做好业务
  • 二三阶行列式
  • 2025 年 10 月 8 日 语文作业
  • 10.11 CSP-S模拟29 改题记录
  • CHAR与VARCHAR深度解析:MySQL字符类型选择指南与性能对比
  • 001 初识编程
  • 前端实验(二)模板语法 - 实践
  • vivo霸榜背后:以技术打赢用户保卫战
  • 国庆期间做题记录
  • 02020508 EF Core高级08-表达式树、Expression和委托的关系、查看表达式树结构、AST、手动创建表示树、工厂方法
  • UnitTask中的Forget()与 CTS
  • commons-net - 详解
  • 12 种 Pandas 测试技巧,让数据处理少踩坑
  • 02020505 EF Core高级05-实体的5种状态、EntityEntry、AsNoTracking、实体状态跟踪
  • securityCTF 2025 pwn方向题解
  • 02020507 EF Core高级07-悲观并发控制、乐观并发控制、EF Core连接MySQL、RowVersion
  • linux防火墙操作命令
  • 02020506 EF Core高级06-EF Core批量删除更新插入、全局筛选器、软删除、全局筛选的性能问题
  • 完整教程:游标查询在对话历史场景下的独特优势
  • [论文笔记] A Contemporary Survey of Large Language Model Assisted Program Analysis
  • C语言入门教程 | 第一讲:C语言零基础入门教程:第一个代码到变量运算详解
  • 机器学习社会影响与导航系统研究
  • 【AI算力架构设计分析】1000PetaOps 算力云计算系统设计方案(大模型训练推理专项版)
  • 实用指南:漏标(Missing Mark)问题深度解析
  • 251011
  • 【程序员必看】MySQL数据类型全解析:选错类型性能直接掉80%!
  • NOIP2023