Python面向对象编程学习笔记


一、类和对向

面向过程和面向对象的编程

面向过程的编程:函数式编程,C程序等

面向对象的编程:C++,JAVA,Python等

类和对象:是面向对象中的2个重要概念

类:是事物的抽象,比如汽车;

对象:是类的一个实例,比如QQ汽车,大客车。

范例说明:

汽车模型可以对汽车的特征和行为进行抽象,然后可以实例化为一台真实的汽车实体出来。

二、Python类定义

Python类的定义使用class关键字定义一个类,且类名的首字母要大写;

当程序员创建的类型不能用简单类型表示时,就要创建类;

类把需要的变量和函数组合在一起,这种包含也称为“封装”。

Python类的结构:

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

类的方法中至少有一个参数self

对象的创建

创建对象的过程称之为实例化;当一个对象被创建后,包含3个方面的特性:对象的句柄,属性和方法。

句柄(对象的名字)用于区分不同的对象。

对象的属性和方法与类中的成员变量和成员函数相对应。

----------------------------------------

方法

公共方法

私有方法

类方法

静态方法

#!usr/bin/python
#coding:utf8

class Milo():
    name = 'csvt'

    def fun1(self):
        print self.name
        print 'public'
        self.__fun2()
    def __fun2(self):
        print 'private'

    @classmethod
    def classFun(self):
        print 'class'

    @staticmethod
    def staticFun(self):
        print 'static'

zou = Milo()
print Milo.name
Milo.classFun()

----------------------------------------

一、内部类

内部类就是在类的内部定义的类,主要目的是为了更好的抽象现实世界。

二、魔术方法(构造函数和析构函数)

 
 1 #!usr/bin/python
 2 #coding:utf8
 3 
 4 class Milo():
 5     class Test():
 6         var1 = "neibulei"
 7     name = 'csvt'
 8 
 9     def __init__(self,n = 'baby'):
10         self.name = n
11         print "initializing......"
12 
13     def fun1(self):
14         print self.name
15         print 'public'
16         self.__fun2()
17     def __fun2(self):
18         print 'private'
19 
20     @classmethod
21     def classFun(self):
22         print 'class'
23 
24     @staticmethod
25     def staticFun(self):
26         print 'static'
27 
28     def __del__(self):
29         print 'releasing sources......'
30 
31 zou = Milo()

三、垃圾回收机制

Python采用垃圾回收机制清理不再使用的对象;

Python提供gc模块释放不再使用的对象;

Python采用“引用计数”的算法方式来处理回收,即:当某个对象在其作用域内不再被其他对象引用的时候,Python就自动清除对象;

Python的函数collect()可以一次性收集所有待处理的对象(gc.collect())。

--------------------------------------分割线 --------------------------------------

CentOS上源码安装Python3.4 

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版]

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码]

Python脚本获取Linux系统信息

在Ubuntu下用Python搭建桌面算法交易研究环境

Python 语言的发展简史

Python 的详细介绍:请点这里
Python 的下载地址:请点这里

本文永久更新链接地址:

相关内容