Python3 类简介

类简介

    类简介

目录概览

  • 示例

  • 示例

      '''Python中同样是支持面向对象编程的(Object Oriented Programming)。''''''1. 类的数据属性和实例的数据属性不同,即使同名;2. 类的实例可以在被创建后通过.的形式来新增实例数据属性;3. 类数据属性通过类名来调用和修改,也可以通过实例来调用但不能修改,如果通过实例来更新则会产生一个新的仅属于该实例属性;4. 类有静态方法和类方法,可以通过函数修饰符来说明;5. Python中的类可以多继承;6. 默认Python中的属性和方法是公开的(Public),可以通过下面的方法来实现 私有变量和方法_xxx        不能用'from module import *'导入__xxx__     系统定义名字__xxx       类中的私有变量名"单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量;"双下划线" 开始的是私有成员,意思是只在类内部能被访问,连子类对象也不能访问到这个数据。'''# 定义一个人物类class People(object):# 此处定义的类的属性count = 0def __init__(self, name, sex, age):# 类似this指针People.count += 1self.name, self.sex, self.age = name, sex, ageself.count = 10# 此处定义实例的属性self.instance_attr = 'Test'# 公有成员函数def peoplePrint(self):print('Name is', name)print('Sex is', sex)print('Age is', age)# 静态方法  此处无参数@staticmethoddef static_method():print('This is a static method in', People.__name__)# 类方法 cls为类@classmethoddef class_method(cls):print('This is a class method', cls.__name__)name = 'who'sex = 'm'age = 23# 打印类的属性print(People.__dict__)# 类实例化one_people = People(name, sex, age)print(one_people.__dict__)# 调用成员函数one_people.peoplePrint()# 实例对象调用对象的成员变量print(one_people.name)one_people.name = 'am'print(one_people.name)# 调用类的属性print(People.count)People.count += 1print(People.count)print(People.__dict__)# 实例化另一个对象 类的属性count自增1two_people = People(name, sex, age)print(People.__dict__)# ============================# 静态方法People.static_method()# 类方法People.class_method()# ============================华丽的分割线===================================class Animal(object):"""这是一个动物的基类"""def __init__(self):"""初始化方法"""print('这是一个动物的基类')self.__printAnimal()self._printAnimal()def sounding(self):"""定义一个基本行为(方法)"""print('动物的发声')def _printAnimal(self):"""类的保护函数"""print('Protected')def __printAnimal(self):"""类的私有函数,只能被在类的内部使用"""print('Private')class Dog(Animal):"""继承Animal基类"""def __init__(self):Animal.__init__(self)  # 此处需要显示的给定参数selfprint('实例化一个Dog对象')def sounding(self):"""重载基类的方法"""Animal.sounding(self)print('Dog的发声是:汪汪')class Cat(Animal):"""继承Animal基类"""def __init__(self):Animal.__init__(self)print('实例化一个Cat对象')def sounding(self):"""重载父类的sounding方法:return: None"""Animal.sounding(self)print('Cat的发声是:喵喵')# 实例Dog对象dog1 = Dog()# 调用Dog类的sounding方法dog1.sounding()# 调用父类的保护方法dog1._printAnimal()# 实例Cat对象cat1 = Cat()# 调用Cat类的sounding方法cat1.sounding()# 调用父类的保护方法cat1._printAnimal()# cat1.__printAnimal() 报错

转载于:https://www.cnblogs.com/cloudtj/articles/6108739.html

python-类知识点简介相关推荐

  1. python常用知识点总结-python 类知识点总结

    python 类知识点总结 面向对象思想: 1.设计的时候,一定要明确应用场景 2.由对象分析定义类的时候,找不到共同特征和技能不用强求 1.简述类.对象.实例化.实例这些名词的含义: 类:从一组对象 ...

  2. Python基础知识点拾遗---文件IO(os、filecmp、shutil库)、sys库、序列化(pickle)、类

    Python基础知识点拾遗 文件IO 文本 目录 os 获取文件的创建.修改及最近访问时间 获取当前文件的大小 获取当前的登录用户名称 获取当前的cpu核数 调用操作系统底层的random生成器 sh ...

  3. python元类使用场景_Python元类使用简介

    本文概述 Python中的元类是定义类行为方式的类的类.类本身就是元类的实例. Python中的类定义了该类实例的行为.为了更好地理解元类, 需要具有使用Python类的先验经验.在深入研究元类之前, ...

  4. python有什么内容_python的类(简介,没什么内容)

    参考: https://www.cnblogs.com/studyDetail/p/6446180.html (python的类) https://www.cnblogs.com/zunchang/p ...

  5. [python]数据类(dataclass)简介

    文章目录 数据类定义 装饰器 field 初始化 数据比较 后处理 dataclasses方法 Python3.7引入了dataclass.dataclass装饰器可以声明Python类为数据类:数据 ...

  6. python装饰器-python装饰器简介---这一篇也许就够了(推荐)

    Python装饰器(decorator)是在程序开发中经常使用到的功能,合理使用装饰器,能让我们的程序如虎添翼. 装饰器引入 初期及问题诞生 假如现在在一个公司,有A B C三个业务部门,还有S一个基 ...

  7. python 完全面向对象_史上最全的Python面向对象知识点疏理

    原标题:史上最全的Python面向对象知识点疏理 面向对象技术简介 类: 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例.class 类变量:类变 ...

  8. python基础知识点小结(2021/2/9)

    python基础知识点小结(2021/2/9)持续更新中~~ 入门小知识 cmd 在cmd上进行python,直接输入 python\quad pythonpython 退出cmd输入 exit()\ ...

  9. python @修饰符_数据结构与算法之8——抽象数据类型与python类

    就算你是特别聪明,也要学习,从头学起!--(俄国)屠格涅夫 本篇文章要说的主要是数据结构与算法和python中关于类(Class)以及异常(Error)的一些基础,虽然很简单,但是必须非常重视.只有在 ...

  10. Python基础知识点六万字总结,爆肝一周熬夜完成【建议收藏】

    大家好,我是辣条. 今天给大家带来Python基础知识点的总结,不夸张的说我一周才写完,这才是第一弹,如果大家喜欢记得三连呦,我会火速更新下一弹,争取把这个系列做完,希望得到大家的支持. 目录 注释 ...

最新文章

  1. Android 百度地图 SDK v3.0.0 (二) 定位与结合方向传感器
  2. 拖延不是你的锅,全是基因惹的祸
  3. 3.GDScript(1)概览
  4. java分页数据导出excel
  5. git 查看、创建、切换、删除、重命名和推送分支
  6. 基于 Redis3.2.4 集群搭建说明
  7. Ansys maxwell仿真——悬浮球的磁场仿真
  8. 打破认知:程序设计=算法+数据结构?
  9. 怎么批量修改照片的分辨率?照片dpi怎么调?
  10. Hyperledger Fabric 网络环境的一点理解
  11. Nokia计划在2009年推出多款OLED屏幕手机
  12. 008 解决问题的策略 转化(苏教版 五下)
  13. 如何在邮件正文中贴简历里
  14. 容器CICD实践:基于Helm实现应用交付自动回滚
  15. 2022-06-08你抢不到的可达鸭,芯片成本只要几块钱KFC(-JPG)
  16. 哈佛医生帮你增强记忆力
  17. 目标检测指标mAP详解
  18. 2018世界人工智能大会开幕 森亿智能张少典谈AI与医疗融合
  19. Basic4android 的妈妈 Basic4ppc
  20. 计算机桌面开辟一个小桌面,电脑桌面图标异常怎么办,那就自己动手做一个小工具快速修复吧...

热门文章

  1. 动态规划最大子段和问题
  2. 打印所有低于平均分的分数(数组)
  3. 求1+2+……+N的和
  4. Linux-0.00 代码解析(三)
  5. C语言模拟实现(二)-----可变分区存储管理方式
  6. 日常生活小技巧 -- SecureCRT上传和下载文件
  7. zcmu1156: 新年彩灯Ⅰ
  8. Linux 解压后的启动流程分析
  9. blob转file对象_JavaScript Blob 对象解析
  10. ms17-010 php版本,那年MS17-010