一.内容回顾

  类:具有相同属性和方法的一类事务

  # 描述一类事务轮廓的一个机制

    #商品/用户/店铺

  对象/实例: 对象(实例)就是类的实例化

    # 对象就是类的一个具体的表现

      #某一件特定的商品/某个人/某一家店

  实例化 : 类 --> 对象

  实例化的过程:

    #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 类和对象的命名空间的更多相关文章

  1. 077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象

    077 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 02 类和对象 本文知识点:类和对象 说明:因为时间紧张,本人写博客过程中只是对知识点 ...

  2. day27 Pyhton 面向对象02 组合

    # 组合 # 什么是组合 : 一个类对象的属性是另外一个类的对象 class Person: def __init__(self,name,sex,hp,mp,ad): self.name = nam ...

  3. Python面向对象02/类的空间问题、类与对象之间的关系、类与类之间的关系

    Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 目录 Python面向对象02/类的空间问题.类与对象之间的关系.类与类之间的关系 1. 类的空间问题 2. 类与对象之间 ...

  4. oop面向对象【类与对象、封装、构造方法】

    今日内容 1.面向对象 2.类与对象 3.三大特征——封装 4.构造方法 教学目标 1.能够理解面向对象的思想 2.能够明确类与对象关系 3.能够掌握类的定义格式 4.能够掌握创建对象格式,并访问类中 ...

  5. 面向对象、类与对象、成员与局部变量、封装、private、构造函数、this、static、extends、super、final、abstract、interface、多态、内部类、异常【5】

    若有不正之处,请多多谅解并欢迎批评指正,不甚感激. 请尊重作者劳动成果: 本文原创作者:pipi-changing本文原创出处:http://www.cnblogs.com/pipi-changing ...

  6. java面向对象之 类和对象

    OOP:Object Oriented Programming(面向对象编程) 面向对象: 1:将复杂的事情简单化. 2:面向对象将以前的过程中的执行者,变成了指挥者. 3:面向对象这种思想是符合现在 ...

  7. C#基础篇--面向对象(类与对象)

    1.类是什么?  类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...

  8. Python记录14:面向对象编程 类和对象

    '''现在主流的编程思想有两种,一种是面向对象,一种是面向过程面向过程编程 核心是过程二字,过程指的是解决问题的步骤,即先干什么.再干什么.最后干什么... 基于该思想编写程序就好比再设计一条流水线, ...

  9. Python 面向对象(创建类和对象,面向对象的三大特性是指:封装、继承和多态,多态性)

    概念:                                                                                                 ...

随机推荐

  1. 逆向工程,生成pojo、xml、mapper

    package com.how2java; import java.io.File; import java.io.InputStream; import java.util.ArrayList; i ...

  2. 仅显示sessionid,servername,serverport的一个springboot小程序

    下载地址:https://files.cnblogs.com/files/xiandedanteng/sessionid20191227-1.zip --END-- 2019-12-2710:07

  3. Java模拟实现扫雷功能

    //棋子 public class Chess { private boolean isBoomb=false; private int id;//下标 //点击方法 public int click ...

  4. 怎么把后台传过来的Json拼成table 用Jquery ajax()

    页面上的表格定义:<table id="tableId"></table> js中的代码:var $parent0 = $('#tableId);//获取页 ...

  5. linux下禁止root和匿名用户登录ftp

    1.ftp通过root或其他用户进入可视化界面权限过大,容易导致系统文件误删 windows下输入ftp://IP去访问,不需要账号密码就可以访问到ftp文件夹 刚进去pub是空的,在linux上新增 ...

  6. get、post请求方式在postman中使用步骤

    1.get请求方式:不需要借助任何工具,在浏览器里面就可以发送请求,直接在浏览器里面输入访问      url?参数名=参数值  url?parma=abc&name=abcd 2.post请 ...

  7. oracle之二ASM 管理

    Oracle ASM 管理(PPT-II:602-636) 16.1 什么是ASM 自动存储管理即ASM(Automatic Storage Management),是Oracle提供的一项管理磁盘的 ...

  8. 用 Java 做个“你画手机猜”的小游戏

    本文适合有 Java 基础的人群 作者:DJL-Lanking HelloGitHub 推出的<讲解开源项目>系列.有幸邀请到了亚马逊 + Apache 的工程师:Lanking( htt ...

  9. Windows10上安装MySQL(详细)

    一.下载MySQL 1.在浏览器里打开mysql的官网http://www.mysql.com 2.进入页面顶部的"Downloads" 3.下滑页面,打开页面底部的"C ...

  10. TIDB 笔记

    整体架构: