python面向对象

类的继承

#!/usr/bin/python

# -*- coding: UTF-8 -*-

classEmployee:

‘所有员工的基类’

empCount=0

def__init__(self,name,salary):

self.name=name

self.salary=salary

Employee.empCount+=1

defdisplayCount(self):

print”Total Employee %d”%Employee.empCount

defdisplayEmployee(self):

print”Name : “,self.name,”, Salary: “,self.salary

“创建Employee类的第一个对象”

emp1=Employee(“Zara”,2000)

1.empCount变量是一个类变量,它的值将在这个类的所有实例之间共享。你可以在内部类或外部类使用Employee.empCount访问

2.self代表类的实例,self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

3. __init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法

定义子类

classChild(Parent):#定义子类

括号中为父类名。

支持方法重写,运算符重载

def__add__(self,other):

#运算符重载

returnVector(self.a+other.a,self.b+other.b)

v1=Vector(2,10)

v2=Vector(5,-2)

printv1+v2结果输出为:Vector(7,8)

Python内置类属性

·__dict__ :类的属性(包含一个字典,由类的数据属性组成)

·__doc__ :类的文档字符串

·__name__:类名

·__module__:类定义所在的模块(类的全名是’__main__.className’,如果类位于一个导入模块mymod中,那么className.__module__等于mymod)

·__bases__ :类的所有父类构成元素(包含了一个由所有父类组成的元组)

Python对象回收(垃圾销毁)

引用计数器:当对象被创建时,就创建了一个引用计数,当这个对象不再需要时,也就是说,这个对象的引用计数变为0时,它被垃圾回收。但是回收不是”立即”的,由解释器在适当的时机,将垃圾对象占用的内存空间回收。

手动销毁对象:

del pt1

类的属性与方法

私有属性或方法:(__name)两个下划线开头,声明该属性或方法为私有,不能在类的外部被使用或直接访问。

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

    原文作者:analanxingde
    原文地址: https://www.jianshu.com/p/fa5fb58ce394
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞