码迷,mamicode.com
首页 > 编程语言 > 详细

python_way ,day7 面向对象 (初级篇)

时间:2016-06-25 06:10:16      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:

面向对象 初级篇

 
python支持 函数 与 面向对象
 
什么时候实用面向对象?

 技术分享技术分享

面向对象与函数对比

类和对象
创建类
class 类名
    def 方法名(self,xxxx)
类里面的方法,只能对象去调用
    对象 = 类名()

通过对象执行方法
对象.方法名(xxxx)

设计,增删改查功能
函数式:
def fetch(self,host,port name passwd,sql)
    pass

def create(self,host,port name passwd,sql)
    pass

def remobe(selfhost,port name passwd,sql,id)
    pass

def modify(self,host,port name passwd,sql)
    pass

面向对象
    class sql():
        
           def fetch(host,port name passwd,sql)
                    pass

            def create(host,port name passwd,sql)
                    pass

            def remobe(host,port name passwd,sql,id)
                    pass

            def modify(host,port name passwd,sql)
                    pass

 技术分享 

 一次封装多次调用。

 

面向对象使用场景:
     一堆的函数有共同的参数:
    当某些函数具有相同参数时

 

self到底是什么鬼?
    self 类自动传值的是形参
    那个对象执行方法,self就是谁
    obj1.remove(selecrt) self = obj1
    obj2.remove(selet..) self = obj2

 

 

__init__什么鬼
构造方法
这个特殊的方法再类()时自动会执行这个方法
obj1 = sql(c1,c2,c3)
此时构造了一个obj1对象

 

面向对象特性:
    三大特点:    封装 继承 多态
 
    python可以多继承
 
    父类和子类有同样的方法,优先使用子类的方法
 
 
技术分享
 
 
class f1:
def __init__(self):
self.name = 123

def show(self):
print("show")


class f2(f1):
# def __init__(self,name):
    #     self.name = name
def bar(self):
print(self.name)

 

单继承:
    如果涉及到继承,就是把父类的方法拿到自己的类里面
技术分享
按照优先级关系 左边的优先级高
如果 多继承多级中都有需要的方法?
没有共同的父类  先网上找,再找平级的。
技术分享
 
 
有共同的父类
 
技术分享
 
 
sockserver模块中的继承关系
技术分享
 
 

 

python_way ,day7 面向对象 (初级篇)

标签:

原文地址:http://www.cnblogs.com/python-way/p/5615688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!