python基础知识08-类定义、属性、初始化和析构

1.类的定义

class 类 是独立存放变量(属性/方法)的一个空间.

每个实例都是一个独立的变量空间.不同实例之间的空间互相不可见.

一个实例的特征,就是属性.

定义在类中的私有属性也可以被子类继承.

变量在类中称为属性,但是类中的属性不仅仅只包含变量,函数等其他的对象也可以作为类的属性.

类可以把各种对象组织在一起, 作为类的属性,通过.(点)运算符来调用类中封装好的对象.

class Fruit: 类名一般首字母大写,函数名一般首字母小写

name = 'Apple' 属性

d = '这么大'

a = Fruit() 类的实例化

Fruit() 类的调用

print(a.name,a.d) 'Apple' '这么大' 实例调用属性

print(Fruit.name) 'Apple' 类名调用属性

2.定义属性

定义属性:

Fruit.color = '黑色的' 在类外面定义属性.

print(Fruit.color) 可以访问

print(b.color) 也可以打印出.

第三种 定义属性

c = Fruit()

c.du = '有毒' 定义在创建的实例里面.

print(c.du) '有毒'

私有属性 定义一个私有属性

_xxx = 123 aaa 一个或两个下划线 _

一个下划线的时候不能看到,但可以访问.

两个下划线的时候看不到,不能访问

 

查找属性的方法 先查找实例的属性,如果没有查找类的属性.

3.类的方法

类里面定义一个特殊的函数就叫做方法

class Person:

name = 'ren'

def eat(self,a,b): #self 是自身的一个实例.传其他参数直接逗号加参数

print('吃鸡腿')

self.sleep() #通过self与类里面的方法建立一个联系

wum = Person()

print(wum.name)

wu.eat()

Person.eat(wum) #类名调用方法,需要传一个实例

4.类的初始化和析构

初始化

class Person:

def init(self,name,age,sex):

self.name = name

self.age = age

self.sex = sex

wum = Person() 实例化的时候自动调用init()魔术方法.即实例化产生一个类的实例,Python自动调用实例.init(参数),转换为类.init(实例,参数)

析构

代码执行完后,默认执行析构方法.

def del(self):

print('销毁了')

魔术方法

在没有一个变量指向某个对象的时候,Python会自动销毁这个对象,以便收回内存空间.del关键字,可以删除一个变量的指向.

 

posted @ 2019-06-06 11:07  博立克  阅读(563)  评论(0编辑  收藏  举报