一.类的定义

1.类的基本结构

#命名规则: 驼峰法
class Student():  # 使用class 定义类a= 1 # 变量name = '小明'def aa(self): # 函数print(self.name)

函数中需要写self

函数中调用类中变量  使用 self.变量名

2.类的调用

要是使用类,需要实例化(使用类模版,实现具体实现的对象)

# 实例化 student类
student = Student()
# 调用类下面的方法
student.aa()

类只负责定义, 而不负责执行(运行和调用这个类,要在类的外部)

二.方法和函数的区别

方法: 面向对象中的方法, 面向对象关注的是;函数:定义在模块中

变量,定义在模块中 称之为变量;定义在类中称之为 数据成员

没有必要特别强调区别

三.类与对象

类与对象的关键点在是否实例化

类是现实世界或思维世界中的实体在计算机中的反应

它将数据以及这些数据上的操作封装在一起

面向对象设计,从行为与特征设计类

类像是一个模版,通过类可以产生无数对象

对象代表一个具体的,是对类的实现

四.构造函数 __init__

class Student: name = ''age = 0def __init__(self):# 构造函数 inti...
  1. 构造函数是在类实例化的时候自动调用
  2. 构造函数不能返回值, 只能返回None

作用:

让模版构造不同的函数,初始化对象的特征,属性

class Student:name = ''age = 0def __init__(self, name, age):# 构造函数self.name = nameself.age = 0print(11)student = Student('小花',11)
print(student.name)

五.类变量和实例变量

类变量:类变量就是和类相关的变量,类和具体的对象无关
实例变量:实例变量就是和对象相关联的

python 中,self后面跟的才是实例变量

写在类中的变量是类变量

class Student:name = ''   # 类变量,  名字属性对学生类,实际上是没有太大的意义,应写在实例变量中sum # 一个班级里所有学生的总数, 这个就比较有意义def __init__(self, name, age):# 构造函数self.name = name   # 实例变量self.age = 0print(11)

1.类与对象的变量查找顺序

对象变量-->类变量-->父类

self  代表 调用该方法的对象

2.在实例方法中访问实例变量与类变量

构造函数(自动执行),可以看成是一个特别的 实例方法.
区别:
1.调用方式不同:调用构造函数: 实例(对象)名 = 类名(参数1,参数2)例如: student1 = Student('石敢当' ,18)调用普通方法: 实例(对象)名.实例方法名例如: student1.dohomework()
2.意义不一样(特征&行为):构造函数的作用:初始化类的各种特征实例方法的作用:描述类的行为
3.访问方式:实例方法访问 实例的变量:①self.变量名实例方法访问 类的变量:① self.__class__.变量名② 类名.变量名

六. 类方法

1.定义类变量的时候,要加入cls,而且在类变量上方加入@classmethod,调用的时候同样是类.
2.cls代表就是类,self 代表的实例对象,  cls可以改成别的

尽量不要使用对象调用类方法,虽然可以调用

class Student:sum1 = 0@classmethoddef plus_sun(cls):"""类方法:return:""" cls.sum1 +=1print(cls)# 调用
Student.plus_sun()

七. 静态方法

class Student:# 定义@staticmethod  # 静态方法装饰器def add(x,y):  # 静态方法可以没有self或者clsprint('这是一个静态方法')# 调用:
student1 = Student()
# 1.对象调用
student1.add(1,2)
# 2.类调用
Student.add(1,2)

八.成员的可见性

1.内部调用与外部调用

内部调用指在类的内部访问调用

外部调用是指在类的外部访问调用

变量、方法等都有内部调用与外部调用

编码小建议: 不要在类的外面直接对类变量赋值, 应该通过在方法,方法中添加校验,保护数据的安全

自己编码的情况下,为了省事,可以这样直接赋值

2. 公开与私有,

public 公开的           private 私有的

python默认类中的变量与方法是公开的,在之前加上__(双下划线)后认为是私有的

类的外部不能访问私有方法与变量

原理:

定义私有变量后,   python会将私有变量名改成  _类名__私有名,所以在外部访问不到,

所以如果在外面  想要操作私有变量,可以用 _类名__私有名 的方式

由于python属于动态语言, 所以从外部给私有变量赋值,本质上是给对象添加了一个新的属性

python学习笔记(面向对象,类)相关推荐

  1. Python学习笔记 (类与对象)

    Python学习笔记 (类与对象) 1.类与对象 面向对象编程语言类: 一个模板, (人类)-是一个抽象的, 没有实体的对象: (eg: 张三, 李四) 属性: (表示这类东西的特征, 眼睛, 嘴巴, ...

  2. python面向对象编程72讲_2020-07-22 Python学习笔记27类和面向对象编程

    一些关于自己学习Python的经历的内容,遇到的问题和思考等,方便以后查询和复习. 声明:本人学习是在扇贝编程通过网络学习的,相关的知识.案例来源于扇贝编程.如果使用请说明来源. 第27关 类与面向对 ...

  3. Python学习笔记:类

    本文来自:入门指南 开胃菜参考:开胃菜 使用Python解释器:使用Python解释器 本文对Python的简介:Python 简介 Python流程介绍:深入Python 流程 Python数据结构 ...

  4. python学习——oop-python面向对象,类相关基础

    0.目录 文章目录 0.目录 1. 面向对象概述(ObjectOriented, OO) 2. 类的基本实现 3. 关于self 4.类相关函数 5.类的成员描述符(属性) 6.类的内置属性 7.类的 ...

  5. Python 学习笔记13 类 - 继承

    我们在编程的过程中,并非都是要重头开始.比如其他人已经有现成的类,我们可以使用其他找人编写的类.术语称之为: 继承. 当一个类继承例外一个类时,它可以获得这个类的所有属性和方法:原有的类称之为 父类, ...

  6. Python学习9 面向对象 类和对象

    面向对象和面向过程 类和对象 类的设计 类的创建 self:相当于当前对象:类似于Java中的this 类的创建和使用: #类的命名:每个单词首字母大写 class Dog:#属性name = 'do ...

  7. python学习笔记:类的方法总结

    python中类的方法总结 在python中,类的方法有如下三种: (1)实例方法(即:对象方法) (2)类方法 (3)静态方法 下面,将对这三种方法进行总结. 1.实例方法(对象方法) 通常情况下, ...

  8. python学习笔记(类)

    类中一个常见的魔术方法 class pipei():def __init__(self,name,age,high): self.name = nameself.age = ageself.high ...

  9. Python 学习笔记12 类 - 使用类和实例

    当我们熟悉和掌握了怎么样创建类和实例以后,我们编程中的大多数工作都讲关注在类的简历和实例对象使用,修改和维护上. 结合实例我们来进一步的学习类和实例的使用: 我们新建一个汽车的类: #-*- codi ...

最新文章

  1. 宣称“禁用新疆产品”,英特尔紧急道歉:出于表述合规合法初衷
  2. volatile和synchronized关键字
  3. java进程CPU飙高
  4. python 类初始化函数_C类初始化函数
  5. 浪潮gs设置连接服务器信息,浪潮GS系统客户端设置方案
  6. C语言谭浩强博客,折半查找法--C语言谭浩强版练习6.9
  7. Ubuntu 18.04 安装驱动
  8. android 卡片行星,卡片详情
  9. python表达式3or5的值为_Python表达式10+5%3-True+False的值为____。
  10. 【期末复习】计算机组成原理 袁春风
  11. mcpe服务器网页控制台教程,mcpe服务器指令
  12. 英语单词-2020.11.14
  13. 三全食品安全阴云未散:京东自营店未公示生产许可证
  14. apache配置优化之伪静态设置
  15. 新版FPC摄像头测评 OV7725 OV7670 OV9650 OV9655 OV5640 OV5642 OV2640 OV3640 MT9D112
  16. 重磅!九州云斩获“2020中国数字生态云计算卓越企业”奖
  17. 《全国土地分类》与土地利用现状分类对照表
  18. fat32转ntfs
  19. Openoffice安装中文字体
  20. 武汉市计算机学校报名条件,武汉本地户口上小学报名需要什么证件

热门文章

  1. 管理与维护linux系统(任务五 六 七 八)
  2. MacOS图标文件 .icns 一键生成脚本
  3. dell笔记本指示灯闪烁_DELL笔记本电脑指示灯在电脑关闭后仍然闪烁是什么原因?...
  4. Python开发Windows桌面应用程序(一)PyCharm+PyQt5开发环境搭建
  5. 谷歌想要返华,但却陷入了尴尬境地
  6. GPA计算 UESTC - 152
  7. 前端vue-高德地图操作
  8. 发送消息(SendMessage)常识普及
  9. java下载m3u8转ts合成mp4
  10. IOS逆向(1)IOS越狱