马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
封装是模拟真实事件,将数据和代码封装在一起,对外部隐藏对象的工作细节。
数据封装用列表,代码封装用函数,两者合起来就是对象的封装
对象 = 属性+ 方法
对象几个特征:封装,继承,多态
属性是一些静态的变量,方法是动态的函数
例子如下:class Turtle: # Python 中的类名约定以大写字母开头
"""关于类的一个简单例子"""
# 属性
color = 'green'
weight = 10
legs = 4
shell = True
mouth = '大嘴'
# 方法
def climb(self):
print("我有%d条腿,我正在很努力的向前爬......" % self.legs) # 方法中对属性的引用需加上self
def run(self):
print("我正在飞快的向前跑......")
def bite(self):
print("咬死你咬死你!!")
def eat(self):
print("有得吃,真满足^_^")
def sleep(self):
print("困了,睡了,晚安,Zzzz")
>>> tt = Turtle() # 创建Turtle的实例对象并赋值给tt
>>>tt.climb()
我正在很努力的向前爬......
>>>tt.bite()
咬死你咬死你!!
>>>tt.sleep()
困了,睡了,晚安,Zzzz
OO的特征:封装 ,继承
OO = Object Oriented 面向对象
封装例子:>>> list1 = [2,1,7,5,3] # 列表是一个对象
>>> list1.sort() # 调用其方法
>>> list1
[1, 2, 3, 5, 7]
>>> list1.append(9) #调用其方法
>>> list1
[1, 2, 3, 5, 7, 9]
继承是子类自动共享父类之间数据和方法的机制
继承例子:>>> class MyList(list):
pass # pass 只是占位符,不干任何事
>>> list2 = MyList()
>>> list2.append(5)
>>> list2.append(3)
>>> list2.append(7)
>>> list2
[5, 3, 7]
>>> list2.sort()
>>> list2
[3, 5, 7]
多态: 不同对象对同一方法响应不同的行动
>>> class A:
def fun(self):
print('我是小A。。。')
>>> class B:
def fun(self):
print('我是小B。。。')
>>> a = A()
>>> b = B()
>>> a.fun()
我是小A。。。
>>> b.fun()
我是小B。。。
|