《Python 第七章》更加抽象

 python主要的内建对象类型 (数字,字符串,列表,元组和字典)
 面向对象的语言python : 多态,封装,方法,特性,超类,继承!
@学习摘录 701:对象的魔力
 * 多态 : 意味着可以对不同类的对象使用同样的操作!
 * 封装 : 对外部隐藏对象的工作细节。
 * 继承 : 以普通的类为基础建立专门的类对象。
@学习摘录 702:多态无处不在!
>>> 'abc'.count('a')
1
>>> ['a', 2, 'a', 3].count('a')
2
>>> 1+2
3
>>> 'dog'+'cat'
'dogcat'
------------702.py-------------------------
#!/usr/bin/python
#coding utf-8
def add(x, y) :
    return x + y
print add(1, 2)
print add('Hi', '--Tom!')
hp@ubuntu:~/py$ python 702.py
3
Hi--Tom!
------------------------------------------
@学习摘录 703:创建自己的类!
#!/usr/bin/python
#coding: utf-8 
__metaclass__ = type # 确定使用新式类
class Person :
    def setName(self, name) :
        self.name = name
    def getName(self) :
        return self.name
    def greet(self) :
        print "Hello, world! I'm %s." % self.name
foo = Person()
bar = Person()
foo.setName('Jim')
bar.setName('Tom')
foo.greet()
bar.greet()
print "陈立宾"
print type(bar)
------------------------------------------
@学习摘录 704:python并不直接支持私有方式
class Secretive :
    def __inaccess(self) :
        print "Bet you can't see me..."
    def access(self) :
        print "The secret message is :"
        self.__inaccess()
>>> s = Secretive()
>>> s.access()
>>> s.__inaccess() 出错
>>> Secretive._Secretive__inaccess()
确保其他人不会访问对象的方法和特性是不可能的,但是这类 “名称变化术”就是他们不应该访问这些函数或者特性的强有力信号!
 -- 完成私有也可以使用单下划线,不过是个习惯,但确实有效果。
  例如,前面有下划线的名字都不会被带星号的 imports 语句 (from module import *) 导入!
@学习摘录 705:类的命名空间
  像方法一样,类作用域内的变量也可以被所有实例访问。
@学习摘录 706:指定超类
@学习摘录 707:调查继承


转载于:https://www.cnblogs.com/robbychan/archive/2013/03/04/3787025.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值