面向对象银角大王补充-什么时候适用面向对象

本文介绍了面向对象编程的基本概念,包括类与对象的区别及其联系,并通过具体应用场景展示了如何利用面向对象编程解决问题,提高代码复用性和灵活性。

1、什么是面向对象编程?

-以前使用函数

-现在使用类+对象

2、什么是类什么是对象,又有什么关系?

3、什么时候适用面向对象?

应用场景一、

如果只用函数,如下图,会很麻烦,每次都要连接服务器,关闭:

现在我们来用类class来优化下流程:

用类的方法就灵活的多,可以用一个连接,来做很多很多事情。最后再关闭下就可以了。

将函数里公共的功能提取出来,写到类里,这样灵活的多。

应用场景二、

根据一个模版来创建很多东西,很多实例的时候;

应用场景三、如下面的函数使用的情况:

 我们可以优化成如下的方式:公共的部分,公共的属性传一次参数。其他的方法再分别传一次。

当很多的函数需要传入多个公共的参数的时候,可以把公共的参数提取出来,封装进去,以后,其他的函数再传入自有的参数即可。

 

### 设计思路 在面向对象的设计中,通过定义类和对象来模拟现实世界中的实体及其交互行为。对于饲养员饲养老虎这一场景,可以通过定义`Feeder`(饲养员)类和`Tiger`(老虎)类,并建立两者之间的关系来进行建模。 #### 定义 `Tiger` 类 为了更好地描述一只老虎的行为特性,在Python中可以这样定义: ```python class Tiger: def __init__(self, name, age): self.name = name # 名字属性 self.age = age # 年龄属性 def roar(self): print(f"{self.name}发出了一声吼叫") def eat(self, food): print(f"{self.name}正在吃{food}") ``` 此部分代码实现了对老虎基本特性和动作的抽象表示[^1]。 #### 定义 `Feeder` 类 接着定义负责照顾这些动物的人——即饲养员的角色: ```python class Feeder: def __init__(self, name): self.name = name def feed_tiger(self, tiger, food="肉"): print(f"饲养员 {self.name} 正在给 {tiger.name} 喂食") tiger.eat(food) def call_tiger(self, tiger): print(f"饲养员 {self.name} 召唤了 {tiger.name}, ", end="") tiger.roar() ``` 这里不仅包含了喂养方法还加入了召唤老虎的方法,使得整个互动更加生动有趣[^2]。 #### 使用示例 最后展示如何实例化上述两个类并让它们之间发生相互作用: ```python if __name__ == "__main__": # 创建一个名为大王的三岁雄性东北虎 da_wang = Tiger("大王", 3) # 创建一位名叫李华的饲养员 li_hua = Feeder("李华") # 李华给大王喂食 li_hua.feed_tiger(da_wang) # 李华呼唤大王 li_hua.call_tiger(da_wang) ``` 这段简单的对话展示了利用面向对象的方式构建了一个小型的应用程序框架,其中每个角色都有自己的职责范围,并且能够与其他组件协作完成特定的任务[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值