面向对象基础
目标
讲解面向对象思想
类和对象的创建
添加和获取对象属性
魔法方法,构造方法
一. 理解面向对象(OOP编程)
面向对象是一种抽象化的编程思想,很多编程语言中都有的一种思想。
要不然不能开发一些大的项目只能局限小的项目。。。
总结:面向对象就是将编程当成是一个事物,对外界来说,事物是直接使用的,不用去管他内部的情况。而编程就是设置事物能够做什么事。
二. 类和对象
关系:用类去生成对象
类
类是对一系列具有相同特征和行为的事物的统称,是一个抽象的概念,不是真实存在的事物。
特征即是属性,静态的特点
行为即是方法,动态特点
语法:
class Xxx: # 通常首字母大写
def xx(self):
pass
def yy(self):
pass
......
对象
对象:是真实存在的具体指某一个事物
对象又名实例。
语法
对象名 = 类名()
注意:创建对象的过程也叫实例化对象。
添加或获取对象熟悉
self
self指的是调用该函数的对象。
对象属性既可以在类外面添加和获取,也能在类里面添加和获取。
语法
对象名.属性名 = 值
魔法方法
定义:xx()的函数叫做魔法方法,指的是具有特殊功能的函数。
举个栗子:init()方法的作用:初始化对象。
def __init__(self,color,price,system,size,room):
self.color=color
self.price = price
self.system=system
self.size=size
# self.后面的变量名可以随便起,= 后面的对应实例对象
self.ss=room
注意:
init()方法,在创建一个对象时默认被调用,不需要手动调用
init(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递过去。
再举个栗子:str()方法的作用:返回,重写
当使用print输出对象的时候,默认打印对象的内存地址。如果类定义了__str__方法,那么就会打印从在这个方法中 return 的数据。
def __str__(self):
return f'颜色为{self.color},价格为{self.price},系统是{self.system},屏幕尺寸是{self.size},运行内存是{self.room}'
# 如果使用__str__ 后 return 后面必须是字符串
再举个栗子:del()方法的作用:删除
当删除对象时,python解释器也会默认调用__del__()方法。