您的位置:首页 > 编程语言 > Python开发

零基础入门学习Python(16):对象(1)

2015-12-21 13:39 716 查看

零基础入门学习Python(16):对象(1)

Python无处不对象,对象 = 属性 + 方法(变量+函数)

[code]>>> class FirstClass:          #Python中的类名约定以大写字母开始
        #属性
        color = 'red'
        name = 'Jessica'
        #方法
        def eat(self):         #类中方法定义时把self写进第一个参数,这是默认的要求
            print("I want to eat something...")
        def sleep():
            print("I want to sleep...")


面向对象(Object Oriented)的特征

1、封装:信息隐蔽技术

[code]>>> test1 = FirstClass()       #test1是FirstClass类的一个实例对象
>>> test1
<__main__.FirstClass object at 0x026E5A90>
>>> test1.name                 #可以通过实例调用类的属性和方法
'Jessica'
>>> test1.eat()
I want to eat something...


2、继承:子类自动共享父类数据和方法的机制

[code]>>> class MyList(list):        #创建自己的列表类MyList,让它继承Python中的列表类list
    pass                       #pass是一个占位符,表示这个类不做任何事情

>>> list1 = MyList()           #生成一个MyList的对象,即生成了一个空列表,相当于list1 = list()
>>> list1
[]
>>> list1.append(2)            #由MyList生成的对象可以调用父类list的方法
>>> list1
[2]


3、多态:当不属于同一类时,不同类可以有相同的属性名和方法名

[code]>>> class A:
    name = 'xiuxiu'
    def fun(self):
        print("I like playing...")

>>> class B:
    name = 'Jessica'
    def fun(self):
        print("I like eating...")

>>> a = A()
>>> b = B()
>>> a.name                     #因为是不同类的对象,所以会调用相应类的属性和方法
'xiuxiu'
>>> a.fun()
I like playing...
>>> b.name
'Jessica'
>>> b.fun()
I like eating...


零基础入门学习Python(15):二进制存储pickle和异常处理
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: