💕💕💕 博主昵称:摆烂阳💕💕💕
🥰博主主页跳转链接
👩💻博主研究方向:渗透测试 、python编程
📃 博主寄语:希望本篇文章能给大家带来帮助,有不足的地方,希望友友们给予指导
本篇目标
- 理解面向对象
- 类和对象
- 添加和获取对象熟悉
- 魔法方法
一、理解面向对象
面向对象就是将编程当成一种事物,对于外界,事物是可以直接使用的,不用管内部的具体实现步骤,而我们编程就是设置这个事物可以做什么。
打个比方,若在某游戏中设计一个乌龟的角色,应该如何来实现呢?使用面向对象的思想会更简单,可以分为如下两个方面进行描述:
1、从表面特征来描述,例如,绿色的、有 4 条腿、重 10 kg、有外壳等等。
2、从所具有的的行为来描述,例如,它会爬、会吃东西、会睡觉、会将头和四肢缩到壳里,等等。
如果将乌龟用代码来表示,则其表面特征可以用变量来表示,其行为特征可以通过建立各种函数来表示。参考代码如下所示:
class tortoise:
bodyColor = "绿色"
footNum = 4
weight = 10
hasShell = True
#会爬
def crawl(self):
print("乌龟会爬")
#会吃东西
def eat(self):
print("乌龟吃东西")
#会睡觉
def sleep(self):
print("乌龟在睡觉")
#会缩到壳里
def protect(self):
print("乌龟缩进了壳里")
二、类和对象
类:可以理解是一个模板,通过它可以创建出无数个具体实例。比如,前面编写的 tortoise 表示的只是乌龟这个物种,通过它可以创建出无数个实例来代表各种不同特征的乌龟(这一过程又称为类的实例化)。
对象:类并不能直接使用,通过类创建出的实例(又称对象)才能使用。这有点像汽车图纸和汽车的关系,图纸本身(类)并不能为人们使用,通过图纸创建出的一辆辆车(对象)才能使用。
属性:类中的所有变量称为属性。例如,tortoise 这个类中,bodyColor、footNum、weight、hasShell 都是这个类拥有的属性。
方法:类中的所有函数通常称为方法。不过,和函数所有不同的是,类方法至少要包含一个 self 参数(后续会做详细介绍)。例如,tortoise 类中,crawl()、eat()、sleep()、protect() 都是这个类所拥有的方法,类方法无法单独使用,只能和类的对象一起使用。
面向对象编程中两个重要的组成部分: 类 和 对象
类和对象的关系:类产生对象 ----》 实例化
1、理解类和对象
1.1 类
数据: 就是变量 ======》 类中叫属性
功能: 就是函数 ======》 类中叫方法
类就是一系列具有相同特征和行为的事物的统称,是一个抽象化概念,不是真实存在的事物。
- 特征即是属性
- 行为即是方法
1.2 对象
对象就类创建出来的真实存在的事物
注意:开发中,先有类,再有对象
类是抽象的,对象是具体的
一个类可以有多个对象
类是一系列对象的集合
类和类之间行为不同,对象与对象之间数据不同。
2、面向对象实现方法
2.1 定义类
- 语法
# 定义函数
def 函数名():
函数体
# 定义类
class 类名():
代码
注意:类名要满足标识符规则,同时遵循大驼峰命名规则。
class Washer():
def wash(self): # 实例方法
print('洗衣服===')
2.2 创建对象
- 语法:
- 对象名=类名() # 类的实例化
# 洗衣机 洗衣服
class Washer():
def wash(self): # 实例方法
print('洗衣服===')
#