鱼C论坛

 找回密码
 立即注册
查看: 4506|回复: 0

[学习笔记] 036类和对象:给大家介绍对象

[复制链接]
发表于 2017-7-12 22:33:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1.对象=属性+方法
属性:静态的特征  <—变量
方法:动态的动作  <—函数
class Turtle: # Python 中的类名约定以大写字母开头
    """关于类的一个简单例子"""
    # 属性
    color = 'green'
    weight = 10
    legs = 4
    shell = True
    mouth = '大嘴'

    # 方法
    def climb(self):
        print("我正在很努力的向前爬......")

    def run(self):
        print("我正在飞快的向前跑......")

    def bite(self):
        print("咬死你咬死你!!")

    def eat(self):
        print("有得吃,真满足^_^")

    def sleep(self):
        print("困了,睡了,晚安,Zzzz")

>>> tt = Turtle()
>>> Turtle()
<__main__.Turtle object at 0x0249D8D0>
>>> tt.climb()
我正在很努力的向前爬......
>>> tt.bite()
咬死你咬死你!!
>>> tt.sleep()
困了,睡了,晚安,Zzzz
2.OO=Object Oriented面向对象
1)封装:信息隐蔽技术
>>> list1 = [2, 1, 7, 5, 3]
>>> list1.sort()         #对列表排序,具体排序的方式未知
>>> list1
[1, 2, 3, 5, 7]
>>> list1.append(9)      #在列表中添加元素,具体添加元素的方法未知
>>> list1
[1, 2, 3, 5, 7, 9]
2)继承:是子类自动分享父类之间数据和方法的机制
>>> class MyList(list):     #定义的MyList将继承所有list的方法和属性
        pass

>>> list2 = MyList()       
>>> list2.append(5)        #在列表中添加元素5
>>> list2.append(3)        #在列表中添加元素3
>>> list2.append(7)        #在列表中添加元素7
>>> list2
[5, 3, 7]
>>> list2.sort()           #对列表排序
>>> list2
[3, 5, 7]
3)多态:不同对象对同一方法响应不同的行动
>>> class A:             #定义A
        def fun(self):
                print('我是小A...')

                
>>> class B:             #定义B
        def fun(self):
                print('我是小B...')

                
>>> a = A()    #A生成实例对象a
>>> b = B()    #B生成实例对象b
>>> a.fun()      #a调用函数fun
我是小A...
>>> b.fun()      #b调用函数fun 
我是小B...

评分

参与人数 1荣誉 +4 鱼币 +4 收起 理由
小甲鱼 + 4 + 4 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 17:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表