博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 对象的魔力--多态、封装和继承
阅读量:4300 次
发布时间:2019-05-27

本文共 529 字,大约阅读时间需要 1 分钟。

简单介绍下这几个名词的意思。

多态(Polymorphism):意味着可以对不同类的对象使用相同的操作。

封装(Encapsulation): 即对外部世界隐藏对象的工作细节。

继承(Inheritance): 以通用的类为基础建立专门的类对象。 

一、多态

    多态意味着支持多种形态,就算你不知道变量所引用的对象类型是什么,还是能对它进行操作,而它也会根据对象类型的不同而表现出不同的行为。举例"count"和"repr":

>>> 'test'.count('t')2>>> ['a', 'b', 't'].count('a')1
对于变量x,不需要知道其是字符串还是列表,直接调用它的count方法

我们先定义一个简单函数

>>> def length(x):...     print "The length of ", repr(x), "is", len(x)...>>> length('aaa')The length of  'aaa' is 3>>>>>> length([1, 1, 3, 4, 5])The length of  [1, 1, 3, 4, 5] is 5

可以看出函数中使用repr函数, repr函数是多态特性的代表之一。

转载地址:http://xovws.baihongyu.com/

你可能感兴趣的文章
删远端分支报错remote refs do not exist或git: refusing to delete the current branch解决方法
查看>>
python multiprocessing遇到Can’t pickle instancemethod问题
查看>>
APP真机测试及发布
查看>>
iOS学习之 plist文件的读写
查看>>
通知机制 (Notifications)
查看>>
10 Things You Need To Know About Cocoa Auto Layout
查看>>
C指针声明解读之左右法则
查看>>
一个异步网络请求的坑:关于NSURLConnection和NSRunLoopCommonModes
查看>>
iOS 如何放大按钮点击热区
查看>>
ios设备唯一标识获取策略
查看>>
获取推送通知的DeviceToken
查看>>
Could not find a storyboard named 'Main' in bundle NSBundle
查看>>
CocoaPods安装和使用教程
查看>>
Beginning Auto Layout Tutorial
查看>>
block使用小结、在arc中使用block、如何防止循环引用
查看>>
iPhone开发学习笔记002——Xib设计UITableViewCell然后动态加载
查看>>
iOS开发中遇到的问题整理 (一)
查看>>
Swift code into Object-C 出现 ***-swift have not found this file 的问题
查看>>
为什么你的App介绍写得像一坨翔?
查看>>
RTImageAssets插件--@3x可自动生成@2x图片
查看>>