1. class Animal:
  2. cls_attr = 'cls_attr'
  3. _cls_attr = '_cls_attr'
  4. __cls_attr = '__cls_attr'
  5.  
  6. def __init__(self):
  7. self.ins_attr = 'ins_attr'
  8. self._ins_attr = '_ins_attr'
  9. self.__ins_attr = '__ins_attr'
  10. print('Animal __init__')
  11.  
  12. def func(self):
  13. print('func')
  14.  
  15. def _func(self):
  16. print('_func')
  17.  
  18. def __func(self):
  19. print('__func')
  20.  
  21. def __del__(self):
  22. print('Animal __del__')
  23.  
  24. class Dog(Animal):
  25.  
  26. def __init__(self):
  27. '''子类重写__init__函数时,需手动调用父类的__init__函数'''
  28. print('Dog __init__')
  29. super(Dog, self).__init__()
  30.  
  31. def __del__(self):
  32. print('Dog __del__')
  33. super(Dog, self).__del__()
  34.  
  35. a = Animal()
  36. print(a.cls_attr)
  37. print(a._cls_attr)
  38. # print(a.__cls_attr)
  39. print(a._Animal__cls_attr)
  40. print(a.ins_attr)
  41. print(a._ins_attr)
  42. # print(a.__ins_attr)
  43. print(a._Animal__ins_attr)
  44. a.func()
  45. a._func()
  46. # a.__func()
  47. a._Animal__func()
  48. del a
  49.  
  50. print('-' * )
  51.  
  52. d = Dog()
  53. print(d.cls_attr)
  54. print(d._cls_attr)
  55. # print(d.__cls_attr)
  56. print(d._Animal__cls_attr)
  57. print(d.ins_attr)
  58. print(d._ins_attr)
  59. # print(d.__ins_attr)
  60. print(d._Animal__ins_attr)
  61. d.func()
  62. d._func()
  63. # a.__func()
  64. d._Animal__func()
  65. del d
  1. Animal __init__
  2. cls_attr
  3. _cls_attr
  4. __cls_attr
  5. ins_attr
  6. _ins_attr
  7. __ins_attr
  8. func
  9. _func
  10. __func
  11. Animal __del__
  12. --------------------------------------------------
  13. Dog __init__
  14. Animal __init__
  15. cls_attr
  16. _cls_attr
  17. __cls_attr
  18. ins_attr
  19. _ins_attr
  20. __ins_attr
  21. func
  22. _func
  23. __func
  24. Dog __del__
  25. Animal __del__

python 类属性和实例属性、方法 访问权限问题的更多相关文章

  1. Python类属性,实例属性

    1.Python类数据属性:定义在类里面但在函数外面的变量,它们都是静态的. #一段很简单的代码,但反应了很多 >>> class A(): a=1 #一个类里面有个属性a > ...

  2. Python中的类属性、实例属性与类方法、静态方法

    1.什么是类对象,实例对象 类对象:类名 实例对象:类创建的对象 2.类属性就是类对象所拥有的属性,它被所有类对象的实例对象所共有,在内存中只存在一个副本,这个和C++.Java中类的静态成员变量有点 ...

  3. Python的程序结构[0] -> 属性/Property[0] -> 类属性、实例属性和私有属性

    类属性.实例属性和私有属性 Python中类的属性主要包括类属性,实例属性和私有属性,下面是对三种属性的简单介绍 类属性 / Class Property 类属性在__init__()之外初始化,在外 ...

  4. Python之路-面向对象&继承和多态&类属性和实例属性&类方法和静态方法

    一.面向对象 编程方式 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强…” 什么是面 ...

  5. Python笔记(十八)_私有属性、实例属性、类属性

    私有属性 如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线__,就变成了一个私有属性,只有内部可以访问,外部不能直接访问或修改. 这样就确保了外部代码不能随意修改对象内部的状态,这样通过 ...

  6. Python基础:17类和实例之一(类属性和实例属性)

    1:类通常在一个模块的顶层进行定义.对于Python来说,声明与定义类是同时进行的. 2:类属性仅与其类相绑定,类数据属性仅当需要有更加“静态”数据类型时才变得有用,这种属性是静态变量.它们表示这些数 ...

  7. Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性

    什么是对象和类 https://www.cnblogs.com/poloyy/p/15178423.html 什么是 Python 类.类对象.实例对象 https://www.cnblogs.com ...

  8. python中类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法

    类对象.类属性与实例对象.实例属性的区别 在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性.类属性在内存中只有一份,在__init__外部定义. 通过类创建的对象称为实 ...

  9. Python:类属性,实例属性,私有属性与静态方法,类方法,实例方法

    From: http://www.cnblogs.com/pengsixiong/p/4823473.html 属性分为实例属性与类属性 方法分为普通方法,类方法,静态方法 一:属性: 尽量把需要用户 ...

  10. python基础-类的属性(类属性,实例属性,私有属性)

      一:类的属性 类的属性分为:类属性(公有属性),实例属性和私有属性. 1)类属性(公有属性(静态字段): 类定义时直接指定的属性(不是在__init__方法中),可以通过类名直接访问属性,并且保存 ...

随机推荐

  1. onlyOffice 开发相关 总结

    onlyOffice 服务端 客户端 相关开发整理 功能: 所有客户端都可用 云端部署服务 查看 预览 doc ppt excel 编辑 权限控制 开发技术准备 用户服务器端 提供保存接口 用户浏览器 ...

  2. setState 是异步的

    1.解决 setState 异步问题 // 查询 handleSearch(e){ // 禁止默认行为 e.preventDefault(); // 获取 form 表单的值 this.setStat ...

  3. Multiple analytic account plans多辅助核算方案

    定义核算方案     菜单 会计/设置/辅助核算会计/多个方案         点击"创建"按钮         说明 辅助核算方案,输入方案名称     点击"添加一个 ...

  4. 转移iOS App常见问题和回答

    打算转移公司的app,做下转移的记录 怎样转移app官方的一个视频:http://v.youku.com/v_show/id_XNjI0MjQxMzI0.html 以下是apple官方转移常见问题回答 ...

  5. RabbitMQ Connector

    https://ci.apache.org/projects/flink/flink-docs-master/dev/connectors/rabbitmq.html RabbitMQ Source ...

  6. top swap

    显示交换空间(虚拟内存)的使用情况

  7. HTML CSS 编码规范

    返璞归真,代码规范也是一门艺术 黄金定律 永远遵循同一套编码规范 -- 可以是这里列出的,也可以是你自己总结的.如果你发现本规范中有任何错误,敬请指正.通过open an issue on GitHu ...

  8. (最新)各大公司Java后端开发面试题总结

    ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量. 采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一 ...

  9. finally{} 代码块

    package Exception; /* * finally{}代码块 * * finally{]代码块是必须要被执行的,不管异常是否处理成功,该代码块里面的代码体都会被执行, */ public ...

  10. java java.io.IOException: No locks available异常处理解决

    try {    randomAccessFile = new RandomAccessFile(file, "rw");    lock = randomAccessFile.g ...