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

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. 二次剩余-Cipolla

    二次剩余 \(Cipolla\) 算法 概述 大概就是在模 \(p\) 意义下开根号,如求解方程\(x^2\equiv n(mod\ p)\). 这里只考虑 \(p\) 为素数的情况.若 \(p=2\ ...

  2. BZOJ3926 Zjoi2015 诸神眷顾的幻想乡【广义后缀自动机】

    Description 幽香是全幻想乡里最受人欢迎的萌妹子,这天,是幽香的2600岁生日,无数幽香的粉丝到了幽香家门前的太阳花田上来为幽香庆祝生日. 粉丝们非常热情,自发组织表演了一系列节目给幽香看. ...

  3. Ubuntu搭建 Apache、MySQL、PHP环境

    以Ubuntu 16.04为例: 1.安装MysSQL 打开命令行输入 :sudo apt-get install mysql-server 输入管理员密码 选择Y 在安装的中间会出现输入Mysql的 ...

  4. 浅谈ES6新特性

    ES6的了解 新增模板字符串(为JavaScript提供了简单的字符串插值功能).箭头函数(操作符左边为输入的参数,而右边则是进行的操作以及返回的值Inputs=>outputs.).for-o ...

  5. altera官方推荐时钟使用方法

    Register Combinational Logic Outputs If you use the output from combinational logic as a clock signa ...

  6. UVA12716 GCD XOR 数论数学构造

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u010682557/article/details/36204645 题目给你一个N,让你求 两个数 ...

  7. 解决openoffice进程异常退出的办法:

    实现以守护进程,定时检测openoffice是否退出,如果进程不存在,通过脚本将openoffice起起来即可.   具体操作步骤: 第一步: 将openoffice.sh脚本放置在root目录下面, ...

  8. redis+php实现微博功能(三)

    个人主页显示微博列表(自己及关注人的微博列表) /*获取最新的50微博信息列表,列出自己发布的微博及我关注用户的微博 *1.根据推送的信息获取postid *2.根据postid获取发送的信息 */ ...

  9. 黄聪:如何使用Add-on SDK开发一个自己的火狐扩展

    火狐开放了扩展的开发权限给程序员们,相信很多人都会希望自己做一些扩展来方便一些使用. 我最近做一些项目也需要开发一个火狐扩展,方便收集自己需要的数据,因此研究了几天怎么开发,现在已经差不多完成了,就顺 ...

  10. 适配:px与dp转换

    public class DensityUtil { /** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */ public static int dip2px(Context con ...