python对象与类

一些基本概念

对象(Object):将一组数据和与这组数据有关操作组装在一起,形成一个实体,这个实体就是一个对象。
类 (Class):具有相同或相似性质的对象的抽象就是类。因此,对象的抽象就是类,类的具体化就是对象。例如,如果人类是一个类,则一个具体的人就是一个对象。
封装:将数据和操作捆绑在一起,定义一个新类的过程就是封装。
继承:指一个类可以继承另一个类的特性,和父子关系的类似。
方法:也称为成员函数,是指对象上的操作,作为类声明的一部分来定义。方法定义了对一个对象可以执行的操作。
构造函数:一种成员函数,用来在创建对象时初始化对象。构造函数一般与它所属的类完全同名。
析构函数:析构函数与构造函数相反,当对象脱离其作用域时(例如声明对象的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做清理善后工作。

类与对象的使用

类的声明

class 类名:
    成员变量
    成员函数

class Person:
    def  SayHello(self):
        print("hello")

在成员函数SayHello()中有一个参数self。这是类的成员函数(方法)与普通函数的主要区别。类的成员函数必须有一个参数self,而且位于参数列表的开头。

定义类的对象
对象是类的实例。如果人类是一个类的话,那么某个具体的人就是一个对象。只有定义了具体的对象,才能使用类。
python对象的创建方法:

对象名 = 类名()

例:

class Person:
    def  SayHello(self):
        print("hello")

p = Person()    #对象名p相当于一个变量,可以使用它来访问类的成员变量和成员函数
p.SayHello()

成员变量
在类的定义中,可以定义成员变量并同时对其赋初始值。

class MyString:
    str =  "Hello MyString"	#str是静态变量
    def  output(self ):
        print(self.str)	#使用self引用变量

s =  MyString()
s.output()

在类的成员函数中使用self引用成员变量。
python使用下划线作为变量前缀和后缀来指定特殊变量,规则如下:
__xxx __表示系统定义的名字
__xxx 表示类中的私有变量,至于内部可以访问,外部不可以访问
(都是双下划线)

类的成员变量可以分为两种,一种是共有变量,一种是私有变量。共有变量可以在类的外部访问,私有变量只能在类的内部访问。

构造函数
构造函数是类的一个特殊函数,它拥有一个固定的名称,即 __init __。当创建类的对象实例时系统会自动调用构造函数,通过构造函数对类进行初始化操作。

class UserInfo:
    def  __init__(self  , name, pwd):
        self.username = name    #self.username表示为类中的公有变量
        self.__pwd  = pwd           #self.__pwd表示类中的私有变量
    def  output(self):
        print("用户:"+ self.username + "\n密码:" + self.__pwd)

u = UserInfo("admin" , "123") #此时的初始化,就是调用的__init__函数
u.output()

析构函数
析构函数也有一个固定的名称__del __。通常在析构函数中释放类所占用的资源。使用del语句可以删除一个对象,释放它所占用的资源。

class UserInfo:
    def  __init__(self  , name, pwd):
        self.username = name    #self.username表示为类中的公有变量
        self.__pwd  = pwd           #self.__pwd表示类中的私有变量
    def  __del__(self):
        print("删除对象")
    def  output(self):
        print("用户:"+ self.username + "\n密码:" + self.__pwd)

u = UserInfo("admin" , "123") #此时的初始化,就是调用的__init__函数
u.output()
del u       #删除对象语句
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值