Python_面向对象基础
概念
类
一类抽象的事物,是描述了一类事物有哪些属性或者行为,但不是具体——模子。
实例
一个依托于类的规范存在的,被赋予了具体属性值的实际存在的物体。
对象
就是实例,实例的另外一个名称,相当于别名。
实例化
由一个类产生一个实例/对象的过程。
创建一个类用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_面向对象基础的更多相关文章
- 了解JavaScript 面向对象基础 & 原型与对象
面向对象语言中的对象 老是能听到什么基于对象, 面向对象. 什么是对象, 如果有面向对象基础的人可以无视了, 下面举个简单的例子给大家讲讲面向对象中, 对象的定义, 这个是比较通用的, 不过对于JS来 ...
- MYSQL、PHP基础、面向对象基础简单复习总结
一.MYSQL 1.配置MySql 第一步安装服务器(apache). 第二部安装MySql界面程序 2 ...
- 从零开始学Python第六周:面向对象基础(需修改)
标签(空格分隔): 面向对象 一,面向对象基础 (1)面向对象概述 面向过程:根据业务逻辑从上到下写代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类 ...
- python面向对象基础
面向对象基础 1. 简述 编程方式: 面向过程: 根据代码在脚本的堆叠顺序,从上到下依次执行 函数式编程:将相同功能的代码封装到函数中,直接调用即可,减少代码重复性 面向对象:对函数进行分类和封装,将 ...
- java基础学习05(面向对象基础02)
面向对象基础02 实现的目标 1.String类的使用2.掌握this关键字的使用3.掌握static关键字的使用4.了解内部类 String类 实例化String对象一个字符串就是一个String类 ...
- java基础学习05(面向对象基础01--类实例分析)
面向对象基础01(类实例分析) 实现的目标 1.如何分析一个类(类的基本分析思路) 分析的思路 1.根据要求写出类所包含的属性2.所有的属性都必须进行封装(private)3.封装之后的属性通过set ...
- java基础学习05(面向对象基础01)
面向对象基础01 1.理解面向对象的概念 2.掌握类与对象的概念3.掌握类的封装性4.掌握类构造方法的使用 实现的目标 1.类与对象的关系.定义.使用 2.对象的创建格式,可以创建多个对象3.对象的内 ...
- 8.python笔记之面向对象基础
title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...
- 【重走Android之路】【Java面向对象基础(三)】面向对象思想
[重走Android之路][基础篇(三)][Java面向对象基础]面向对象思想 1 面向对象的WWH 1.1 What--什么是面向对象 首先,要理解“对象”.在Thinkin ...
随机推荐
- 【Ubuntu16.04.4】常用配置
1.为root用户设置密码 sudo passwd root 2.设置用户登陆界面 sudo gedit /usr/share/lightdm/lightdm.conf.d/50-unity-gre ...
- centos7如何安装gcc5.4
由于需要使用到cilk plus和std=c++14,所以决定将编译器升级. 基本教程如下: 1.下载GCC源码: wget ftp://mirrors.kernel.org/gnu/gcc/gcc- ...
- nginx学习笔记(一)
select模型主要是apache用 FD 文件描述符 soa架构 安装nginx ping baidu.com netstat -lntup 查看端口 cat /etc/redhat-rel ...
- Openstack安装Dashboard之后,浏览器无法打开页面 500 Internal Server Error
在手动部署Openstack时,按照官方文档安装Dashboard,并进行了配置后,发现用浏览器无法打开界面 页面显示: Internal Server Error The server encoun ...
- C和指针 (pointers on C)——第七章:函数(上)
第七章 函数 这一章对于有一定C的基础的人有一定优秀代码风格的人来说,并非非常虐.关于stdarg宏可能有些陌生.它负责可变參数列表的定义. 总结: 新式风格和旧式风格就不要提了.八百年前的事情. 函 ...
- 【转】Android hdpi ldpi mdpi xhdpi xxhdpi适配详解
1.了解几个概念(1)分辨率.分辨率就是手机屏幕的像素点数,一般描述成屏幕的“宽×高”,安卓手机屏幕常见的分辨率有480×800.720×1280.1080×1920等.720×1280表示此屏幕在宽 ...
- 第5章 Java中的锁
5.1 Lock接口 并发编程安全性需要使用到锁,synchronized是一种隐式的获得与释放锁的关键字,除此之外还有Lock接口及其实现类,该接口及实现类提供了显示获取和释放锁的方式. 除了上述编 ...
- 仿照wtform自定义Form组件
仿照wtforms自定义Form组件 1.wtforms 点击查看源码分析及使用方法 2.自定义Form组件 #!usr/bin/env python # -*- coding:utf-8 -*- f ...
- 已使用.netframework,version=v4.6.1 而不是目标框架netcoreapp,version=v2.1 还原包,此包可能与项目不完全兼容
已使用.netframework,version=v4.6.1 而不是目标框架netcoreapp,version=v2.1 还原包,此包可能与项目不完全兼容 NU1202: 包 System.Run ...
- 极端恢复时用到的几个隐藏参数 Oracle hidden corruption recovery parameters
Oracle hidden corruption recovery parameters Note: Oracle hidden parameters are undocumented and uns ...