概念

  类

    一类抽象的事物,是描述了一类事物有哪些属性或者行为,但不是具体——模子。

  实例

    一个依托于类的规范存在的,被赋予了具体属性值的实际存在的物体。

  对象

    就是实例,实例的另外一个名称,相当于别名。

  实例化

    由一个类产生一个实例/对象的过程。

创建一个类用class,类名通常用大写字母开头。

类中可以存放两个东西:

  静态属性(变量)

    country = ‘China’

  动态属性

    def func(self):

      pass

    其中self为形参,也可以为其他名字,只是大家习惯使用self,也就成了大家默认的可以改变的但又大家遵守的一个东西。

类名可以做两件事情:

  查看静态属性和动态属性

    print(Person.Country)  # 变量的值

    print(Person.func)  #方法的地址

    Person.func(0)  # 使用Person调用方法的时候self也是需要传的参数,不能直接调用。

    类名.__dict__  查看内置的对象

  创造一个对象 对象 = 类名()

    obj = Person()  就是创造一个对象了   

    对象 = 类名()

      在实例化的过程中会自动的触发__init__方法.

    命名空间和内存地址以及创造一个对象的时候到底发生了什么.

      首先要创造一个对象

      会自动的触发__init__,将创造出来的对象的地址传给self

      执行init中的代码

      将self指向的地址再返回给调用者

      当程序运行起来的时候,会加载一个缩进内的代码,在此时会先为这个类创建一个空间,然后在这个空间中开辟一块地方存放一个缩进内的变量和方法.

  以下标号为执行顺序标号:

  对象名可以调用静态属性

  

  对象名可以调用方法

  对象:

    属性——具体的值

    方法——行为

  对象与对象之间:

    属性值截然不同

    行为都是相近的

  对象可以找到类,但是类找不到对象,这是一个单向关系。

  静态变量之U所以出现是因为他是所有对象都共享的值。

  调整静态变量的值:直接用类名去调整是最准确的

  对象对一个静态变量重新赋值的过程实际上是在对象所在的内存空间中添加了一个同名属性而已。

  方法并没有真正存储在对象的空间中,之所以能找到,是因为每一个对象在创建之初都有一个执行类的指针指向类的内存空间。

  

  类名:

    查看修改静态属性

    实例化

  对象名:

    查看对象的属性

    调用方法

  对象使用名字的特点:自己有的时候使用自己的,自己没有的时候使用类中的。

Python_面向对象基础的更多相关文章

  1. 了解JavaScript 面向对象基础 & 原型与对象

    面向对象语言中的对象 老是能听到什么基于对象, 面向对象. 什么是对象, 如果有面向对象基础的人可以无视了, 下面举个简单的例子给大家讲讲面向对象中, 对象的定义, 这个是比较通用的, 不过对于JS来 ...

  2. MYSQL、PHP基础、面向对象基础简单复习总结

    一.MYSQL         1.配置MySql                 第一步安装服务器(apache).                 第二部安装MySql界面程序         2 ...

  3. 从零开始学Python第六周:面向对象基础(需修改)

    标签(空格分隔): 面向对象 一,面向对象基础 (1)面向对象概述 面向过程:根据业务逻辑从上到下写代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类 ...

  4. python面向对象基础

    面向对象基础 1. 简述 编程方式: 面向过程: 根据代码在脚本的堆叠顺序,从上到下依次执行 函数式编程:将相同功能的代码封装到函数中,直接调用即可,减少代码重复性 面向对象:对函数进行分类和封装,将 ...

  5. java基础学习05(面向对象基础02)

    面向对象基础02 实现的目标 1.String类的使用2.掌握this关键字的使用3.掌握static关键字的使用4.了解内部类 String类 实例化String对象一个字符串就是一个String类 ...

  6. java基础学习05(面向对象基础01--类实例分析)

    面向对象基础01(类实例分析) 实现的目标 1.如何分析一个类(类的基本分析思路) 分析的思路 1.根据要求写出类所包含的属性2.所有的属性都必须进行封装(private)3.封装之后的属性通过set ...

  7. java基础学习05(面向对象基础01)

    面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...

  8. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  9. 【重走Android之路】【Java面向对象基础(三)】面向对象思想

    [重走Android之路][基础篇(三)][Java面向对象基础]面向对象思想   1 面向对象的WWH   1.1 What--什么是面向对象         首先,要理解“对象”.在Thinkin ...

随机推荐

  1. Linux中keepalived+LVS负载均衡的搭建测试

    1.1 LVS简介       LVS(Linux Virtual Server),也就是Linux虚拟服务器, 是一个自由软件项目.使用LVS技术要达到的目标是:通过LVS提供的负载均衡技术和Lin ...

  2. php获取ip地址所在的地理位置的实现

    1,通过腾讯或者新浪提供的接口来获取(新浪和腾讯类似) <?php     function getIPLocation($queryIP){      $url = 'http://ip.qq ...

  3. python + MySql 基本操作

    python + mysql数据库的链接 1.安装mysql pip install PySQLdb 2.连接数据库 # -*- coding: UTF- -*- import MySQLdb # 打 ...

  4. LeetCode算法题-Number of Segments in a String(Java实现)

    这是悦乐书的第226次更新,第239篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第93题(顺位题号是434).计算字符串中的段数,其中段定义为非空格字符的连续序列.请注 ...

  5. 【算法】LeetCode算法题-Length Of Last Word

    这是悦乐书的第155次更新,第157篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第14题(顺位题号是58).给定一个字符串,包含戴尔字母.小写字母和空格,返回最后一个单 ...

  6. May 24. 2018 Week 21st Thursday

    Man errs so long as he strives. 失误是进取的代价. It is not important that the man in the arena didn't win, ...

  7. Python爬虫-05:Ajax加载的动态页面内容

    1. 获取AJAX加载动态页面的内容 1.1. Introduction 如果所爬取的网址是通过Ajax方式加载的,就直接抓包,拿他后面传输数据的文件 有些网页内容使用AJAX加载,只要记得,AJAX ...

  8. 17秋 软件工程 团队第五次作业 Alpha

    题目:团队作业--Alpha冲刺 17秋 软件工程 团队第五次作业 Alpha 12次Scrum 第一次Scrum 第二次Scrum 第三次Scrum 第四次Scrum 第五次Scrum 第六次Scr ...

  9. 一张图看Docker

  10. 数据库 schema含义

    数据库Schema有两种含义,一种是概念上的Schema,指的是一组DDL语句集,该语句集完整地描述了数据库的结构.还有一种是物理上的Schema,指的是数据库中的一个名字空间,它包含一组表.视图和存 ...