面向对象编程-------------1

面向对象编程(Object Oriented Programming,OOP)是一种软件设计思想,它具有封装、继承和多态这三大特性。

学习面向对象编程首先要了解语法结构,包括类的定义,不同方法的定义及不同变量的定义及相应的使用。

首当其冲,需要学习的是类,它用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。定义类的语法结构如下:

class 类名(首字符大写):

    类体(方法、函数和属性……)

注:如果类体中暂时没有确定如何实现(即没有任何类体语句)时,则需要用pass占位

类中的方法包括特定方法(如:__init__方法,该方法类似于构造函数、__del__方法,该方法类似于析构函数等)、普通方法和类方法

1.特定方法

特定的方法是在特殊情况下或当使用特别语法时由 Python 调用的,而不是在代码中象类方法和实例方法那样直接调用。下面只讲特定方法中的2个__init__和__del__:

(1)__init__方法,该方法在创建实例时被调用,用于初始化实例属性。其定义的语法:

def __init__(self,[参数1,...]):
    self.xxx = 参数1
    ……

(2)__del__方法,该方法在销毁实例时被调用,用于销毁实例属性或关闭资源。其定义的语法:

def __del__(self):
    方法体

2.类方法

类方法是由类名直接调用的方法,该方法不依赖于任何实例。@classmethod 是一个函数修饰符,它表示接下来的是一个类方法,且类方法中第一个参数为cls

@classmethod
def 类方法(cls,[参数1,...]):
    方法体/pass

3.静态方法

静态方法也是由类名直接调用的方法,该方法不依赖于任何实例。@staticmethod是一个函数修饰符,它表示接下来的是一个静态方法,与类方法定义的区别在于,不包含参数cls

@staticmethod
def 静态方法(cl[参数1,...]):
    方法体/pass

4.实例方法

实例方法需由实例调用,方法的第一个参数为self

def 实例方法(self,[参数1,...]):
    方法体/pass

实例方法根据访问权限的不同包括公有方法和私有方法,私有方法的名称以"__"开头;共有方法可以直接用实例调用,私有方法收到保护,只能在类中其它的实例方法中使用self进行调用,保证私有方法仅在当前类中被使用,也更好的体现了封装的思想。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值