Python3中面向对象 OOP

定义:

python中通过关键字 class 实现类的定义:
class ClassName(object):
pass
获取成员变量:ClassName.变量名
修改成员变量:ClassName.变量名 = xxxx
实例化类对象:methodName= ClassName()

常用内置函数:

__init__:构造函数, 主要用来创建对象时初始化对象(为成员变量赋值)
__del__:析构函数,主要在销毁对象时调用(例如数据库连接)

成员变量:

再类中定义成员变量需要用“self”关键字

self.name = 'hello' # 成员变量 name

静态函数:

使用装饰器 "@staticmethod"
class ClassName(object):
@staticmethod
def printMethod():
print('this is static method')
# 可以通过类名直接进行调用 ClassName.printMethod()

类函数:

使用装饰器 "@classmethod"
class ClassName(object):
@classmethod
def objMethod(cls,name,color):
print('this is static method')
# 第一个参数必须为阴性参数cls,替代类名本身

私有成员变量:

python中没有public和private等关键字,它使用"__"开始命名的成员均为私有成员

self.__name =name

继承

在python中所有类均继承object类

class ClassName(object):

继承自定义Base类

class ClassName(Base):

如需重载函数则只需要在子类中重写和父类名称相同的方法
python中允许多继承,但是如果调用方法存在于每个父类中,则python解析器会调用最近类的方法
class A(object):
class B(A)
class C
class D(B,C)
# 查找方法顺序 D->B->A->C
 

Python3中面向对象 OOP的更多相关文章

  1. Python中面向对象的概念

    1.语言的分类 1)面向机器 抽象成机器指令,机器容易理解.代表:汇编语言. 2)面向过程 做一件事,排除步骤,第一步做什么,第二步做什么,如果出现A问题,做什么处理,出现b问题,做什么处理.问题规模 ...

  2. PHP面向对象(OOP)编程入门教程

    面向对象编程(OOP)是我们编程的一项基本技能,PHP5对OOP提供了良好的支持.如何使用OOP的思想来进行PHP的高级编程,对于提高 PHP编程能力和规划好Web开发构架都是非常有意义的.下面我们就 ...

  3. 【PHP面向对象(OOP)编程入门教程】1.什么是面向对象?

    面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程架构,OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成 ...

  4. php面向对象(OOP)编程完全教程

    摘自:http://www.php-note.com/article/detail/41 面向对象编程(OOP)是我们编程的一项基本技能,PHP5对OOP提供了良好的支持.如何使用OOP的思想来进行P ...

  5. 【Python3之面向对象的程序设计】

    一.面向对象的程序设计的由来 1.第一阶段:面向机器,1940年以前 最早的程序设计都是采用机器语言来编写的,直接使用二进制码来表示机器能够识别和执行的指令和数据. 简单来说,就是直接编写 0 和 1 ...

  6. 面向对象(OOP)基本概念

    面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...

  7. Python中面向对象的概念(科普)

    面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...

  8. oc中的oop基础及类的基本介绍

    面向对象的(OOP)的基础知识 类(class):表示一组对象数据的结构体,对象通类来得到自身.类名首字母大写. 对象(objcet):是一种包含值和指向其类的隐藏指针的结构体.运行中的程序中通常会有 ...

  9. python-面向对象-01_面向对象(OOP)基本概念

    面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...

随机推荐

  1. BeautifulSoup 爬虫

    一 安装BeautifulSoup 安装Python的包管理器pip 然后运行 $pip3 install beautifulsoup 在终端里导入它测试下是否安装成功 >>>fro ...

  2. NX二次开发-UFUN修剪体UF_MODL_trim_body

    1 NX11+VS2013 2 3 4 #include <uf.h> 5 #include <uf_modl.h> 6 7 8 UF_initialize(); 9 10 / ...

  3. NX二次开发-UFUN和NXOpen结合开发中Tag_t对象与TaggedObject对象转换方法

    本文通过举四个例子来告诉大家在NX二次开发过程中会经常用到UFUN和NXOpen结合去开发,在UFUN中我们得到的是Tag_t对象,在NXOpen中得到的是TaggedObject对象,这两个是需要进 ...

  4. 【latex】latex基础

    文档边距.间距调整 边距调整 \usepackage{geometry} %设置页边距的宏包 \geometry{left=3.0cm,right=2.5cm,top=2.5cm,bottom=2.5 ...

  5. js的线程和同步异步以及console.log机制

    项目上线了,闲下来就写写东西吧.积累了好多东西都没有做笔记~挑几个印象深刻的记录一下吧. js的同步异步以及单线程问题: 都知道单线程是js的一大特性.但是通常io(ajax获取服务器数据).用户/浏 ...

  6. phpstorm激活 破解 方法

    1.license server 在线激活方式 不是很推荐,自己有服务器的话可以考虑搭建 所以就不说了. 不过我在网上找了一些地址,可以用一下,不保证长期有效 http://idea.goxz.gq  ...

  7. 浅谈使用RestKit将服务器的Json直接映射为本地对象

    RestKit是一个主要用于iOS上网络通信的开源框架,除了发送请求与接受响应这些基本功能外,还附带coredata,以及将远程JSON映射为本地对象的功能.目前版本0.9.3,coredata还不是 ...

  8. Java--用键盘控制小球

    package secondpack; import java.awt.*; import java.awt.event.*; public class MyBall { public static ...

  9. C++实现的B树

    参考资料:按第一个参考资料构建,代码基本上来自于第二个参考资料 https://www.cnblogs.com/guohai-stronger/p/9225057.html https://www.c ...

  10. 制作windows puppet openstack镜像

    由于电信需要远程部署软件,拟使用puppet进行远程服务管理 前提 windows系统已经安装 windows已经安装virtio driver 远程桌面开启,最好关闭防火墙 设置MTU 在没有安装c ...