Python OOP

断断续续写了几年程序,终于接触到面向对象的编程方式。本文记录与以往编程体验不同的地方

数据和逻辑被封装:

1. 操作外部透明

2. good scalability on methods

3. individualism between instances

封装完成后 考虑权限:

1. 访问限制 __ : 限制外部访问,其实py2.7里把__解读成_ClassName__variableName了。

写到py没有任何机制阻止你干坏事,一切靠自觉

2. 用get method return的方式安全访问

3. 同理 用set 来安全修改,这里可以引入参数检查,看输入是否正确

继承:

1. 新的子类class继承SuperClass: class ClassName(superClass): 子类是 子类和Superclass 两种数据类型

   isintance(argu, class)

2. 再定义ChildClass的method,覆盖SuperClass不合适的method

3. 外部操SuperClass的函数,transparency of call childclass

attributes:

do not name the instances attribute same as class attributes.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 OOP的概念就不说了,想必都很了解了。 Oop的三大特点:继承、封装和多态。python作为动态语言的一种,...
    Allenware阅读 1,156评论 0 3
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,786评论 0 9
  • 面向对象编程介绍 ·面向过程:根据业务逻辑从上到下写代码 ·面向对象:将数据与函数绑定到一起,进行封装,这样能够更...
    PythonMaO阅读 558评论 0 0
  • 1.1应用:存放家具 对象之间的传递 1.1保护对象的属性 如果有一个对象,当需要对其进行修改属性时,有2种方法 ...
    PythonMaO阅读 312评论 0 0
  • 前言 python的class有很多高级特性,除了OOP的三大特性,还在设计模式,自定制类和内存优化等都下了很多功...
    Allenware阅读 1,979评论 0 5