摘要: 使用@property 在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改: 这显然不合逻辑。为了限制score的范围,可以通过一个set_score()方法来设置成绩,再通过一个get_score()来获取成绩,这样,在set_score()方法 阅读全文
posted @ 2018-01-19 16:28 裙下的小香蕉 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子。但其实这种理解相当片面 一 封装什么 你钱包的有多少钱(数据的封装) 你的性取向(数据的封装) 你撒尿的具体功能是怎么实现的(方法的封装) 二 为什么要封装 封装数据的主要原因是:保 阅读全文
posted @ 2018-01-19 15:53 裙下的小香蕉 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 接口类 抽象类python中没有接口类,有抽象类,abc模块中的metaclass = ABCMeta,@abstructmethod本质是做代码规范用的,希望在子类中实现和父类方法名字完全一样的方法在java的角度上看 是有区别的 java本来就支持单继承 所以就有了抽象类 java没有多继承 所以为了接口隔离原则,设计了接口这个概念,支持多继承了python及支持单继承也支持多继承... 阅读全文
posted @ 2018-01-19 15:50 裙下的小香蕉 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 很多人喜欢将多态与多态性二者混为一谈,然后百思不得其解,其实只要分开看,就会很明朗。 一 多态: 多态指的是一类事物有多种形态,(一个抽象类有多个子类,因而多态的概念依赖于继承) 序列类型有多种形态:字符串,列表,元组 动物有多种形态:人,狗,猪 1 2 3 4 5 6 7 8 9 10 11 12 阅读全文
posted @ 2018-01-19 09:56 裙下的小香蕉 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 对于支持继承的编程语言来说,其方法(属性)可能定义在当前类,也可能来自于基类,所以在方法调用时就需要对当前类和基类进行搜索以确定方法所在的位置。而搜索的顺序就是所谓的「方法解析顺序」(Method Resolution Order,或MRO)。对于只支持单继承的语言来说,MRO 一般比较简单;而对于 阅读全文
posted @ 2018-01-18 17:34 裙下的小香蕉 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 继承 什么是继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 查看继承 提示:如果没有指定基类,python的类会默认继承object类,object是所有python类的基 阅读全文
posted @ 2018-01-18 16:44 裙下的小香蕉 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 类命名空间与对象、实例的命名空间 创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性 而类有两种属性:静态属性和动态属性 静态属性就是直接在类中定义的变量 动态属性就是定义在类中的方法 其中类的数据属性是共享给所有对象的 而类的动态属性是绑定到所有对象的 创建一个对 阅读全文
posted @ 2018-01-16 16:02 裙下的小香蕉 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西。 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可。 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵 阅读全文
posted @ 2018-01-15 15:30 裙下的小香蕉 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 包是一种通过使用‘.模块名’来组织python模块名称空间的方式。 1. 无论是import形式还是from...import形式,凡是在导入语句中(而不是在使用时)遇到带点的,都要第一时间提高警觉:这是关于包才有的导入语法 2. 包是目录级的(文件夹级),文件夹是用来组成py文件(包的本质就是一个 阅读全文
posted @ 2018-01-15 15:04 裙下的小香蕉 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 序列化的目的 1、以某种存储形式使自定义对象持久化; 2、将对象从一个地方传递到另一个地方。 3、使程序更具维护性。 json Json模块提供了四个功能:dumps、dump、loads、load json & pickle 模块 用于序列化的两个模块 json,用于字符串 和 python数据类 阅读全文
posted @ 2018-01-11 19:51 裙下的小香蕉 阅读(162) 评论(0) 推荐(0) 编辑