刚开始学Java的时候,图书馆各种教程,书名往往都是“Java面向对象高级编程”,通常作者都会与C++做个比较,列出的优点往往都有纯面向对象、自动垃圾收集(不用管理内存)、跨平台(Write once, run everywhere 是宣传的重点,前提是需要在每个平台上安装jvm)、没有指针(后来证... ...
分类:
编程语言 时间:
2017-06-05 00:30:26
阅读次数:
248
数据封装、继承和多态只是面向对象程序设计中最基础的3个概念。在Python中,面向对象还有很多高级特性,允许我们写出非常强大的功能。 我们会讨论多重继承、定制类、元类等概念。 使用__slots__ 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和 ...
分类:
编程语言 时间:
2017-05-14 10:24:50
阅读次数:
198
1 使用__slots__ 1.1 绑定属性和方法 给实例绑定属性 给某个实例绑定方法 但是由于给实例绑定的方法, 别的实例无法使用 因而需要给类绑定方法: 1.2 限定绑定属性 由于Python可以随意的增加属性, 因而为了针对这种情况, 可以在定义函数的时候定义__slots__来限制类里面只有 ...
分类:
其他好文 时间:
2017-03-30 22:41:26
阅读次数:
168
作者: ayaoko 出处: http://www.cnblogs.com/fyc006/> 关于作者:小可才疏学浅还请多多赐教! 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(270469391@qq.com)咨询. ...
分类:
编程语言 时间:
2017-02-20 07:41:37
阅读次数:
254
作者: ayaoko 出处: http://www.cnblogs.com/fyc006/> 关于作者:小可才疏学浅还请多多赐教! 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(270469391@qq.com)咨询. ...
分类:
编程语言 时间:
2017-02-03 12:14:49
阅读次数:
133
一、函数的传参&返回值(引用传值效率高于值传递) 1)参数尽量考虑使用对象引用,对于要求函数不改变对象内容的情况使用const。 2) 返回值尽量使用对象引用, 对于返回值是局部对象的情况只能返回对象不能是引用 原因是局部的对象在函数执行完毕之后会被析构,外部的引用将对应一个无效的对象。 举个栗子理 ...
分类:
编程语言 时间:
2017-01-14 17:30:34
阅读次数:
275
面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对象),实例用于调用被包装在类中的函数 面向对象三大特性:封装、继承和多态 本篇将详细介绍 ...
分类:
编程语言 时间:
2016-11-28 08:00:10
阅读次数:
296
这一章节主要讲解面向对象高级编程->继承进阶篇,包括类多继承介绍和继承经典类和新式类属性的查找顺序不同之处。 多继承 上一章节我们讲到继承,子类继承父类,可以拥有父类的属性和方法,也可以进行扩展。但是有时候会发现,子类需要继承一个类的方法,又要继承另一个类的方法,才能完成要实现的功能。怎么办?pyt ...
分类:
编程语言 时间:
2016-08-08 19:12:05
阅读次数:
243
1.1使用__slots__1.1.1类方法的绑定实例上添加方法>>>classStudent(object):...pass...>>>defset_age(self,age):#定义函数作为实例方法,注意self参数...self.age=age...>>>s=Student()>>>fromtypesimportMethodType>>>s.set_age..
分类:
编程语言 时间:
2016-07-14 07:17:25
阅读次数:
186