python面向对象的介绍

面向对象的概念:

python是一门面向对象的编程语言

面向对象编程中,最常见的表现就是基于类来表现

什么是类(class):

类是用来描述具有相同属性和方法对象的集合

类=属性+行为

属性:特征

方法:行为

什么是对象:
对象是类的实例
世间万物都可以是对象

简单的定义一个类,关键字是class

 属性和方法不要随便定义,要基于类的前提下去定义 

类的实例化:比较重要的东西

举例

 在这里jige就是对象,把类的属性加在鸡哥的身上 

        

 每次调用类的时候,一定要先实例化,赋予个对象,要不不行,一定要有对象!有对象!

构造方法:

类名有一个__init__()的特殊方法(构造方法),该方法在类实例化时会自动调用
当然__init__()方法可以有参数,参数通过__init__()传递到类的实例化上
用于初始化数据时候会使用

举个例子: 

我在执行实例化的时候,他就会自动执行这个方法,而且是最先的调用

接下来我们来简单介绍一下关于类的知识点

类的属性:

类属性:相当于全局变量,实例对象共有的属性

举个例子:比如把人类设定成一个类属性的话,那么所有人类共有的属性就是类属性
    比如:正常人都有五官,都会走路,都需要呼吸等

实例属性:实例对象自己私有,只能通过对象来调用
    
举例:还是用人类来举例,一个人有一个技能,但是这个技能并不是所有人都会的

比如:我家哥哥会打篮球,会唱,会跳,还会rap,这些是他会的技能,但是这些技能并不是所有人都会的
      所以当调用这些的时候,你要先调用哥哥,才能继续调用他技能,也就是实例属性。
 
内置属性:这个简单来了解一下就行
类名__dict__:类的属性(包含一个字典,由类的数据属性构成)
类名—__doc__:类的文档字符串
类名:__name__:类名
类名:__module__:类定义所在的模块(类的全名是'__main__.className',如果类位于一个导入模块mymod中,那么className.__module__等于mymod)
类名:__bases__:类的所哟父类构成的元素(包含了一个由所有父类组成的元组)

类的方法:

实例方法:

使用def关键字来定义一个方法,与一般的函数定义不同,类方法必须包含参数self,且为第一个参数,

self代表的是类的实例,实例方法只能被实例对象调用

静态方法:

由@staticmethod装饰的方法,没有self这个参数,而将这个方法当成一个普通函数使用,可以被类或类

的实例对象调用

类方法:

由@classmethod装饰的方法,他的第一个参数不是self,而是cls,它代表这个类的本身,可以被类或类

的实例化对象调用
内置方法:指定的额方法名,去执行特定的业务

        命名规则:__init__()这个就是内置方法,以两队下划线开始,以两下划线结束

        __init__(self,...):构造方法,在生成对象时调用,可以用来进行一些初始化数据的操作,

不需要显示去调用,系统会默认执行

        __del__(self):析构方法,在释放对象时调用,支持重载,可以在里面进行一些释放资源的操

作,不需要显示调用     #在整个代码执行完毕会自动调用

        __str__(self,....):自定义实例输出方法,写好该方法后,替换实例默认的输出操作

        __getattribute__(...):获取实例属性的值,可直接结合对象使用

其实类属性和类方法还有一个,叫做私有类属性/方法

私有类属性/方法:
私有属性:必须以双下划线开头,只能类内部才能够访问
私有方法::必须以双下划线开头,只能类内部才能够调用

简单吧,完活。

欢迎各位同学进行交流,栓Q!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值