前言
作者简介:短尾巴小鳄鱼 ,一位不放弃自己的上进卷妹
💬 如果文章知识点有错误的地方,请留言指正~和大家一起学习,一起进步
💬 人生格言:昨日种种,皆成今我。今日种种,方成新我。切莫踌躇,莫停留,莫沉溺💬


文章目录

  • python初识面向对象
  • 什么是面向对象编程
  • 类的关键字class
  • 类的参数self
  • 类的构造函数
  • 构造函数的创建
  • 对象的生命周期


python初识面向对象

什么是面向对象编程

利用(面向)对象(属性与方法)去编程的过程

自定义对象数据类型就是面向对象中的类(class)

想要面向对象需要先创建一个类,通过这个类,才能实例化出一个对象

举个例子:

创建类:假如人类是一个类且有自己的属性(有名字,两条腿,穿衣服)和功能(会唱歌,会弹吉他,会跳舞),当然不是所有人都具备类里的所有功能。

实例化类:每个人就是实例化这个类,比如实例化出一个人叫做小明,小明会唱歌、跳舞。"小明"是这个对象的属性,"唱歌、跳舞"是这个对象的功能。

也可以对实例化的对象赋予单独的属性。比如小明身高178cm。

类的关键字class

关键字class来声明类,类的名称首字母大写,多单词情况下每个单词首字母也要大写(驼峰命名)

class Name(object):  
    attr = something
    
    def func(self):
        do

object是python中的一个通用对象,python3.0中建议书写,会带有更多的内置功能,以后会详细介绍。

例子:

Python面向对象实战 python面向对象例子_实例化

类中的函数必须先进行实例化,然后通过实例化对象去调用,否则不能被调用:

Python面向对象实战 python面向对象例子_Python面向对象实战_02

类的参数self

  • self是类函数中的必传参数,且必须放在第一个参数的位置。否则就不是类函数了
  • self是一个对象,他代表实例化的对象自身,是实例化的对象属性与功能与类的属性与功能的桥梁。
  • self可以通过点来定义一个类变量:self.name = 'xiaoming'
  • self中的变量含有self参数的函数可以在类中任何一个函数内随意调用
  • 非函数中定义的变量在定义的时候不用self

例子:

Python面向对象实战 python面向对象例子_实例化_03

如果在类中定义的函数没有添加self参数,那么这个函数将不能被任何实例化的对象调用:

Python面向对象实战 python面向对象例子_开发语言_04

没有添加self参数,也不能被类内部的函数调用:

Python面向对象实战 python面向对象例子_实例化_05

在类函数内部在写一个参数可以不用添加self参数,但实例化对象调用只支持调用类函数,不能单独调用类函数内部的函数。

Python面向对象实战 python面向对象例子_实例化_06

类的构造函数

类中的一种默认函数,用来将类实例化的同时,将参数传入类中

构造函数一般写在类的最上方

构造函数的创建

def __init__(self,a,b):
	self.a = a
    self.b = b

例子:

Python面向对象实战 python面向对象例子_实例化_07

对象的生命周期

Python面向对象实战 python面向对象例子_开发语言_08

python中的内存管理都是自动执行的,我们不需要实际的去在类中添加和调用del函数。

python中实例化对象的时候会自动生成del函数,不用的时候也会自动调用del函数释放内存空间。