day27 Pyhton 面向对象02 类和对象的命名空间
一.内容回顾
类:具有相同属性和方法的一类事务
# 描述一类事务轮廓的一个机制
#商品/用户/店铺
对象/实例: 对象(实例)就是类的实例化
# 对象就是类的一个具体的表现
#某一件特定的商品/某个人/某一家店
实例化 : 类 --> 对象
实例化的过程:
#1.创建一个属于对象的空间
#2.执行__init__,把这个空间传递给init的第一个参数
#3.把这个空间地址作为返回值返回给对象变量
#如何定义一个类
#class Cls:pass
#在类中直接可以定义的内容:
#静态属性 : 这个类拥有的,所有的对象都共享的属性
#动态属性: 方法\定义在类中的函数,描述的是所有对象共享的行为
#类名的作用
#实例化的时候 对象 = 类名()
# 操作静态属性
#对象名的作用:
#操作对象的属性
#调用方法
二.今日内容
#类的命名空间
#类的代码的执行顺序
#静态属性的意义,和他所在的位置
#动态属性所存储的位置
#对象的命名空间
#如何建立起和类之间的关系
#对象的属性是如何存储的
#组合
#常用的技能
# class A:
# Country = 'China'
# def talk(self):
# print('%s is talking'%self.name)
# alex = A()
# 一个类可不可以没有__init__? 可以
# 在没有__init__的情况下,实例化经历了哪些步骤???
# 1.创建一个空间给对象
# 2.将这个空间的地址返回
# alex.name = 'alex'
# alex.talk()
# class A:
# Country = 'China'
# def __init__(self,name):
# self.name = name
# def talk(self):
# print('%s is talking'%self.name)
# 类中的代码是在什么时候执行的? 在实例化之前
# 新增静态属性
# A.静态属性名 = 'abc'
# print(A.静态属性名)
# 修改静态属性
# A.Country = '印度'
# print(A.Country)
# 删除静态属性
# del A.Country
# print(A.Country) # 报错
# print(A.__dict__) # 只能看,不能改也不能删
# 类的命名空间中有什么:
# 静态属性
# 动态属性(方法)
# 对象的命名空间和类的命名空间之间的关系 :
# 对象和类之间有一个单向的联系,类对象指针
# 对象在使用某个名字的时候,如果在自己的空间中没有找到,就要到类的空间中去找

# 如果静态变量是一个不可变数据类型,那么只要对象修改这个数据,就相当于在对象的空间中新建
# 如果静态变量是一个可变数据类型,那么对象修改这个容器中的元素,相当于修改类的空间中的元素
# 如果静态变量是一个可变数据类型,那么对象直接对这个变量重新赋值,相当于修改对象自己空间中的元素 # 大结论
# 只要是静态变量,就用类名去修改,永远修改成功,并且所有的对象都共享这个改变
# 总结
# 对象的命名空间:类指针\对象的所有属性
# 类的命名空间:方法和(静态属性\字段)
# 对象在寻找名字的时候 : 先找对象自己内存空间中的,找不到就去类的命名空间中寻找
# 类中的名字是什么时候写入内存的 : 代码从上到下执行的时候就已经写入的.一定是在实例化之前
# 静态变量 : 尽量用类名去操作
day27 Pyhton 面向对象02 类和对象的命名空间的更多相关文章
- 077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象
077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象 本文知识点:类和对象 说明:因为时间紧张,本人写博客过程中只是对知识点 ...
- day27 Pyhton 面向对象02 组合
# 组合 # 什么是组合 : 一个类对象的属性是另外一个类的对象 class Person: def __init__(self,name,sex,hp,mp,ad): self.name = nam ...
- Python面向对象02/类的空间问题、类与对象之间的关系、类与类之间的关系
Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 目录 Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 1. 类的空间问题 2. 类与对象之间 ...
- oop面向对象【类与对象、封装、构造方法】
今日内容 1.面向对象 2.类与对象 3.三大特征——封装 4.构造方法 教学目标 1.能够理解面向对象的思想 2.能够明确类与对象关系 3.能够掌握类的定义格式 4.能够掌握创建对象格式,并访问类中 ...
- 面向对象、类与对象、成员与局部变量、封装、private、构造函数、this、static、extends、super、final、abstract、interface、多态、内部类、异常【5】
若有不正之处,请多多谅解并欢迎批评指正,不甚感激. 请尊重作者劳动成果: 本文原创作者:pipi-changing本文原创出处:http://www.cnblogs.com/pipi-changing ...
- java面向对象之 类和对象
OOP:Object Oriented Programming(面向对象编程) 面向对象: 1:将复杂的事情简单化. 2:面向对象将以前的过程中的执行者,变成了指挥者. 3:面向对象这种思想是符合现在 ...
- C#基础篇--面向对象(类与对象)
1.类是什么? 类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...
- Python记录14:面向对象编程 类和对象
'''现在主流的编程思想有两种,一种是面向对象,一种是面向过程面向过程编程 核心是过程二字,过程指的是解决问题的步骤,即先干什么.再干什么.最后干什么... 基于该思想编写程序就好比再设计一条流水线, ...
- Python 面向对象(创建类和对象,面向对象的三大特性是指:封装、继承和多态,多态性)
概念: ...
随机推荐
- 单线程模式从网易下载A股叁仟捌佰支股票一年的交易数据耗时十四分钟
代码下载:https://files.cnblogs.com/files/xiandedanteng/StockDataDownloader20200305.rar 压缩包内包含股票代号文件,调整好日 ...
- 在Python程序中执行linux命令
import commands print commands.getstatusoutput('ls') 输出: (0, '1.py\nwork.nfs') 参考文档: https://blog.cs ...
- leetcode刷题-43字符串相乘
题目 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式. 思路 字符串转数字:从字符串第一位开始取,每次取出的值转换为数字 ...
- cookie和session讲解
1.cookie是什么? 保存在浏览器本地上的一组组键值对 2.session是什么? 保存在服务器上的一组组键值对 3.为什么要有cookie? HTTP是无协议状态,每次请求都是互相独立的,没有办 ...
- sql如何查询不包含中文
SELECT * FROM dbo.表名 WHERE 字段名 NOT LIKE '%[吖-座]%'
- PHP的七个数组指针函数
1. PHP的七个数组指针函数 函数 描述 reset() 将一个数组的内部指针重置到首位,并返回第一个元素的值 end() 将一个数组的内部指针移动到数组的最后一个元素所在的位置,并返回最后一个元素 ...
- 《C++深度解析》课程目录
<C++深度解析>课程目录 第1课 - 学习 C++ 的意义 第2课 - C到C++的升级 第3课 - 进化后的const分析 第4课 - 布尔类型和引用 第5课 - 引用的本质分 ...
- [程序员代码面试指南]二叉树问题-判断t1树是否包含t2树的全部拓扑结构、[LeetCode]572. 另一个树的子树
题目1 解 先序遍历树1,判断树1以每个节点为根的子树是否包含树2的拓扑结构. 时间复杂度:O(M*N) 注意区分判断总体包含关系.和判断子树是否包含树2的函数. 代码 public class Ma ...
- sql.表值类型
表值类型是在sql server 2008中新加入的功能,我个人觉得确实很有用,之前从没用过,自从来到现在的公司后学到很多东西,所以和大家分享一下. ------建表值类型语法------------ ...
- web自动化(python)——selenium工具基本使用
WebDriver基本操作 生成driver--启动浏览器 #启动谷歌浏览器,预先安装chromedrvier插件 from selenium import webdriver driver = we ...

