面向对象是一种编程方式,此编程方式的实现基于对  和 对象 的使用。

Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。

在这里,为文章中使用的词汇做一下说明:
函数:指的是第一个参数不是self的函数,不在类中定义的函数;
方法:指是的第一个参数是self的函数,在在类中定义的函数;
实例:类的对象(对类进行实例化即为对象),instance;

 

特性:

封装

封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。

封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

__init__ 是封装必不可少的,看列子:

class Init():

    def __init__(self,name,age,gender):
self.Name = name
self.Age = age
self.Gender = gender obj1 = Init('xiao',15,'男')
obj2 = Init('yao',16,'女') print(obj1.Name)
print(obj2.Name)

这样实现了数据封装

xiao
yao

继承

继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。(此处我们只讨论python3的继承)

通过继承创建的新类称为“子类”或“派生类”。

被继承的类称为“基类”、“父类”或“超类”。

继承的过程,就是从一般到特殊的过程。

要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。

在某些 OOP 语言中,一个子类可以继承多个基类。但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。

class C1():
def c1(self):
print('C1')
class C2(C1):
def c2(self):
print('C2')
class C3():
def c3(self):
print('C3')
def c1(self):
print('C3')
class C4(C2,C3):
def c4(self):
print('C4')
obj = C4()
obj.c1()
obj1 = C3()
obj1.c1()

输出结果:

C1
C3

可见,C4继承C2,C3,C2又继承C1,所以obj会有c1方法。

类的继承可以总结为:

1.左侧优先

  class C4(C2,C3) 这里C2比C3优先

2.深度优先

上面例子C1和C3都有c1方法,但是最后C4继承的是C1的c1

3.有共同的父类,最后找父类

看图红色箭头表示继承关系,黑色箭头表示查找关系

图一:                                                                                                       图二:

aaarticlea/png;base64,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" alt="" />        aaarticlea/png;base64,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CSdIvinYv5tR9ifxSVvnJpg0GTbbufZ59Jfsm4L9u4mclvv379c+DJ5y//79tHVugkmTYbOdmaBRWZ4g+aZg/27MTktP5p0PDw8PDw9r1Vifda5bg87laixOkJfOyTD278brLoYQQtjb29vb26tVY33WuW4NOpersThBXjonw9i/G6+7GEII4fr16zdu3KhVY33WuW4NOpersThBXjonw9i/G6+7GMLh4WHzEmH/iz+mOlevQWedGi46dybIRWcJjP278bqLIezt7TVnt//FH1Odq9egs04NF507E+SiswTG/t143cUQrl+/3pzd/hd/THWuXoPOOjVcdO5MkIvOEtiW/bNnbv/4NO846itHR0dv3rxZ/PmwN2/e1C41EKfrXLvC6NA5MsIJcrrOCYYsEZ790+Gjo6P5F62DL/7Y6WyhBp11atjvvDxB9jsLYVvP/vnvvjb2n3/ROvjij53OFmrQWaeG/c7LE2S/sxDG/t143MUff/xx+S8HnvcHMdLZ4zrTWQfW7zz/aZ/F/PLLL/F39rrO2H8xHnfxu+++Wz67z58/V64x+XWmsw6s3/n58+fLE/T06dP4O3tdZ+y/GI+7+MUXXyyf3a+++kq5xuTXmc46sH7nra2t5Qn68ssv4+/sdZ2x/2Lc7eLR6T+QHfnij4XOweE6Bzprwcqdx07QynhdZ+y/GHe7uPKL1p4Xfyx0Dg7XOdBZC1buPHaCVsbrOmP/xbjbxZVftPa8+GOhc3C4zoHOWrBy57ETtDJe1xn7L8bXLvZ80Xrel67VOzfxtc5N6KwDa3ZOmKDqnXPB2L8br7sYQjj995Jq1Vifda5bg87laixOkJfOyTD278brLoYQsH9hmM46MPbXgbF/N153MYSA/QvDdNaBsb8OjP278bqLIQTsXximsw6M/XVg7N+N110MIWD/wjCddWDsrwPbsn/2rM87PDcfNGe3apfYuF5nR6HzqCRPkNN15h2eW/H6OTyEwLN/YZjOOjDP/jqwrWf//HfH/oo11med69agc7ka2F+/BvYXwdhfB6azDoz9dWDs343XXQwhYP/CMJ11YOyvA2P/brzuYggB+xeG6awDY38dGPt343UXQwjYvzBMZx0Y++vA2L8br7sYQsD+hWE668DYXwfG/t143cUQAvYvDNNZB8b+OjD278brLoYQsH9hmM46MPbXgbF/N153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" alt="" />

3.多态

多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。
那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。
 
Pyhon不支持多态并且也用不到多态,多态的概念是应用于Java和C#这一类强类型语言中
 
 

方法:

 普通方法:由对象调用;至少一个self参数;执行普通方法时,自动将调用该方法的对象赋值给self;
 类方法:由类调用; 至少一个cls参数;执行类方法时,自动将调用该方法的类复制给cls;
 静态方法:由类调用;无默认参数;
 属性方法:Python中的属性其实是普通方法的变种;  
 内置方法: '__dict__', '__doc__', '__init__', '__module__', '__new__', '__repr__', '__str__' 等;
class Foo:
def __init__(self, name):
""" 定义内置方法,至少有一个self参数 """
self.name = name def ord_func(self):
""" 定义普通方法,至少有一个self参数 """
print('普通方法') @classmethod
def class_func(cls):
""" 定义类方法,至少有一个cls参数 """
print('类方法') @staticmethod
def static_func():
""" 定义静态方法 ,无默认参数"""
print('静态方法') @property
def property_fuc(self):
""" 定义属性方法,至少有一个self参数 """
print('属性方法') # 调用普通方法
f = Foo('那么')
f.ord_func()
# 调用类方法
Foo.class_func()
f.class_func()
# 调用静态方法
Foo.static_func()
f.static_func()
# 调用属性方法
f.property_fuc

  实例是可以访问类方法和静态方法的,但不建议这样做,容易混淆。 

变量

变量包括:类变量和实例变量,他们在定义和使用中有所区别,而最本质的区别是内存中保存的位置不同。实例变量属于对象,类变量属于.
类变量在内存中只保存一份,实例变量在每个对象中都要保存一份。
class Province:
# 类变量
country = '中国' def __init__(self, param1):
# 实例变量
self.name = param1
# 直接访问普通字段
obj = Province('北京')
print(obj.name)
# 直接访问静态字段
print(Province.country)
print(obj.country)

  我们可看到同方法相似,实例也是可访问类变量的。

对于每一个类的变量而言都有两种形式:

  • 公有变量,在任何地方都能访问
  • 私有变量,只有在类的内部才能方法
class A:
name = "公有类变量"
def func(self):
print(A.name)
class B(A):
def show(self):
print(A.name)
A.name # 类访问
obj = A()
obj.func() # 类内部可以访问
obj_son = B()
obj_son.show() # 派生类中可以访问

  

class C:
__name = "私有类字段"
def func(self):
print(C.__name)
class D(C):
def show(self):
print(C.__name)
C.__name # 类访问 ==> 错误
obj = C()
obj.func() # 类内部可以访问 ==> 正确
obj_son = D()
obj_son.show() # 派生类中可以访问 ==> 错误

  

class C:

    def __init__(self):
self.foo = "公有实例变量" def func(self):
print(self.foo) # 类内部访问 class D(C):
def show(self):
print(self.foo) # 派生类中访问 obj = C()
obj.foo # 通过对象访问
obj.func() # 类内部访问
obj_son = D()
obj_son.show() # 派生类中访问

  

class C:

    def __init__(self):
self.__foo = "私有实例字段" def func(self): print(self.__foo) # 类内部访问 class D(C): def show(self):
print(self.__foo) # 派生类中访问 obj = C()
obj.__foo # 通过对象访问 ==> 错误
obj.func() # 类内部访问 ==> 正确
obj_son = D()
obj_son.show() # 派生类中访问 ==> 错误

  

注:

非要访问私有属性的话,可以通过 对象._类__属性名  (  print(obj._C__foo)  

新式类&经典类

新式类很早在2.2就出现了,所以经典类(旧式类)完全是兼容的问题,Python3里的类全部都是新式类.

python2.X中

#新式类
class C(object):
pass
#经典类
class B:
pass

python3.X中 由于没有经典类,所以上述两种写法都表示新式类。

**python中的类和他的成员的更多相关文章

  1. Python中的类、对象、继承

    类 Python中,类的命名使用帕斯卡命名方式,即首字母大写. Python中定义类的方式如下: class 类名([父类名[,父类名[,...]]]): pass 省略父类名表示该类直接继承自obj ...

  2. python中的类和实例

    今天花了两个多小时后搜索相关博客看了看python中有关类和实例的介绍,差不多大概明白了. python中的类和c++中的类是一样的,不同之处就是c++的类,如果含有成员变量,并且成员变量发生变化后, ...

  3. 4、Python中的类详解(0601)

    <大话数据结构>的作者程杰在博客园也有博客,网址是:http://cj723.cnblogs.com/ 面向对象编程(OOP) 1.程序 = 指令 + 数据 代码可以选择以指令为核心或以数 ...

  4. python中的类(二)

    python中的类(二) 六.类的成员 字段:普通字段,静态字段 eg: class Province(): country=’中国’ #静态字段,保存在类中,执行时可以通过类或对象访问 def __ ...

  5. Python基础之:Python中的类

    目录 简介 作用域和命名空间 class 类对象 类的实例 实例对象的属性 方法对象 类变量和实例变量 继承 私有变量 迭代器 生成器 简介 class是面向对象编程的一个非常重要的概念,python ...

  6. Python中的类(上)

    在Python中,可以通过class关键字定义自己的类,然后通过自定义的类对象类创建实例对象. 例如,下面创建了一个Student的类,并且实现了这个类的初始化函数"__init__&quo ...

  7. python中新式类和经典类

    python中的类分为新式类和经典类,具体有什么区别呢?简单的说, 1.新式类都从object继承,经典类不需要. Python 2.x中默认都是经典类,只有显式继承了object才是新式类 Pyth ...

  8. Python中的类(一)

    Python中的类(一) 一. 应用场景 如果多个函数中有一些相同的参数时,转换成面向对象. 二. 如何创建类 类是用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法 ...

  9. 关于Python中的类普通继承与super函数继承

    关于Python中的类普通继承与super函数继承 1.super只能用于新式类 2.多重继承super可以保公共父类仅被执行一次 一.首先看下普通继承的写法 二.再看看super继承的写法 参考链接 ...

随机推荐

  1. nginx在使用proxy_pass的情况下开启error_page

    error_page用于指定特定错误发生时要显示的url,但是如果请求经proxy_pass处理后,如何使error_page对upstream产生的错误进行处理呢? 方法很简单. 保持之前的erro ...

  2. MPI 学习

    一.编译MPI mpic++ test.cc -o test 二.启动MPI mpiexec -np 10 ./test 三.几个例子 第一个进程向第二个发一个数,第二个进程向第三个进程发送一个数.. ...

  3. request接收表单提交数据及其中文参数乱码问题

    一.request接收表单提交数据: getParameter(String)方法(常用) getParameterValues(String name)方法(常用) getParameterMap( ...

  4. MySQL 根据身份证查找年龄段

    SELECT       idcard,YEAR (NOW()) - substring(idcard, 7, 4) as nFROM es_members where idcard >0 HA ...

  5. 《selenium2 python 自动化测试实战》(10)——下拉框和alert

    # coding: utf-8 from selenium import webdriverfrom selenium.webdriver.common.action_chains import Ac ...

  6. {Emgu}{C#}保存图片、视频等

    一.簡介 以前研究所的時候,有使用VC.NET 配合 OpenCV 做影像處理,這東西相當讚,可以省去不少開發時間,今天嘗試看看如何在Visual C# 2008 上使用 OpenCV. 以下引用 O ...

  7. 基于C#的UDP协议的异步实现

    一.摘要 总结UDP传输协议的异步实现. 二.实验平台 visual studio 2010 三.实验实例 服务器端代码: using System; using System.Collections ...

  8. bzoj1503[NOI2004]郁闷的出纳员——Splay

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1503 好奇怪呀!为什么而TLE? 各种修改终于卡时过了.可是大家比我快多了呀?难道是因为自己 ...

  9. ios生成自签名证书,实现web下载安装app

    抄自http://beyondvincent.com/blog/2014/03/17/five-tips-for-using-self-signed-ssl-certificates-with-ios ...

  10. GC之九--gc调优

    目标 满足应用的响应时间和吞吐量需求,尽量减少GC对应用的影响 原则 大部分时候都不需要调优GC,只需配置-Xms,-Xmx即可,JVM会自动进行调整 先满足响应时间需求,再满足吞吐量需求 FullG ...