✌🏼第二章 OOP练习
00 min
2024-4-24
2024-5-19
type
status
date
slug
summary
tags
category
icon
password
 

面向对象

1、分数加法实现

创建类Fraction,实现分数的打印,加法(最简分数形式)功能

2、门电路设计

需求: 设计三个逻辑门电路, 与门, 或门和非门电路, 要求用到两次继承.
  • 与电路 AndGate(”标签名”)
    • 两个输入, 返回一个输出
    • 输入全1输出1, 否则输出0
  • 或电路 OrGate(”标签名”)
    • 两个输入, 返回一个输出
    • 输入至少一个为1, 输出1, 否则输出0
  • 非电路 NotGate(”标签名”)
    • 一个输入, 返回一个输出
    • 输入1输出0, 输入0输出1
进阶需求: 设计Connect类, 用来连接三个门电路
分析:
  • 父类: LogicGate 有标签, 有一个输出
  • 子类:
    • 一元电路: BinaryGate 有一个输入
    • 二元电路: UnaryGate 有两个输入
  • 孙类
    • 二元电路
      • 与门 AndGate
      • 或门 OrGate
    • 一元电路
      • 非门 NoteGate

3、用面向对象实现Linkedlist链表

  • 单项列表实现append、iternodes方法
  • 双向列表实现append、iternodes、pop、insert、remove方法
notion image