美文网首页
Python-面向对象

Python-面向对象

作者: zelda2333 | 来源:发表于2019-10-16 10:33 被阅读0次

面向对象技术简介

  • 类(Class):用来描述具有相同的属性和方法的对象集合。他定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
  • 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中而且在函数体之外。类变量通常不作为实力变量使用。
  • 数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。
  • 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
  • 局部变量:定义在方法中的变量,只作用于当前实例的类。
  • 实例变量:在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。
  • 继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。
  • 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。

创建类

#!/usr/bin/python
# -*- coding: UTF-8 -*-
class Employee:
   '所有员工的基类'
   empCount = 0
 
   def __init__(self, name, salary):
      self.name = name
      self.salary = salary
      Employee.empCount += 1
   
   def displayCount(self):
     print "Total Employee %d" % Employee.empCount
 
   def displayEmployee(self):
      print "Name : ", self.name,  ", Salary: ", self.salary
  • init()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法
  • self 代表类的实例,self 在定义类的方法时是必须有的,但是在调用时不需要传入参数。

类的继承

class 派生类名(基类名)
  1. 如果在子类中需要父类的构造方法就需要显示的调用父类的构造方法,或者不重写父类的构造方法。
    如果重写了init 时,实例化子类,就不会调用父类已经定义的 init
  2. 如果重写了init 时,要继承父类的构造方法,可以使用 super 关键字:
super(子类,self).__init__(参数1,参数2,....)

父类名称.__init__(self,参数1,参数2,...)

类属性与方法

类的私有属性
__private_attrs:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs。

类的方法
在类的内部,使用 def 关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数 self,且为第一个参数

  • foo: 定义的是特殊方法,一般是系统定义名字 ,类似 init() 之类的。

  • _foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *

  • __foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。

参考资料:Python 面向对象|菜鸟教程

相关文章

  • Python-面向对象

    类,对象,列表 用Python写一个用类创建房子和床,把床存到房子里,报出一共放置了多少张床。1.在下面代码中“b...

  • python-面向对象

    面向对象 面向过程:根据业务逻辑从上到 下写代码面向对象(OO):将数据与函数绑定到一起,进行封装,这样能够更快速...

  • python-面向对象

    先调用new方法来创建对象,然后找了一个变量来接受new的返回值,这个返回值表示穿件出来的对象的应用。 再调用in...

  • python-面向对象

    面向对象 一种认识世界,分析世界的方法论。将万事万物抽象为类 类class 类是抽象的概念,是万事万物的抽象,是一...

  • python-面向对象

    1、概念 (1)面向过程编程是一种以事件为中心的编程思想,分析解决问题的步骤,然后使用函数或语句块把这些步骤一步一...

  • Python-面向对象

    面向对象技术简介 类(Class):用来描述具有相同的属性和方法的对象集合。他定义了该集合中每个对象所共有的属性和...

  • 笔记更新进度提示

    各位, 为了更快更好的录制,Python-核心阶段课程(面向对象, Pygame, 异常处理等等); 会把更多的时...

  • python-高级、面向对象

    一、类与对象 二、类和对象

  • Python-面向对象--继承

    一.单继承 单继承:比如下图有一个“parent”父类和“son1”,“son2”子类 注:下图第一行中括号内的“...

  • Python-面向对象(二)

    四、继承方法 1、单继承 子类在继承的时候,在定义类时,小括号()中为父类的名字父类的属性、方法,会被继承给子类 ...

网友评论

      本文标题:Python-面向对象

      本文链接:https://www.haomeiwen.com/subject/buesmctx.html