美文网首页
Python3-面向对象编程

Python3-面向对象编程

作者: 梦蕊dream | 来源:发表于2018-01-02 18:10 被阅读201次

Self

image.png
image.png

基础演示:

class Person:
    pass

p = Person()
print(p)

输出信息:

<__main__.Person object at 0x101ebb588>

方法

基础演示

class Person:
    # pass
    def name(self):
        print('Person name')

p = Person()
p.name()
print(p)

输出结果:

Person name
<main.Person object at 0x101ebb588>

init 初始化方法

基础演示

class Person:
    # pass
    def __init__(self, name):
        self.name = name
    def pname(self):
        print('Person name:',self.name)

p = Person('Tom')
p.pname()
print(p)
# 简化写法
# Person('Tom').name()

输出结果:

Person name: Tom
<main.Person object at 0x1041034a8>

类变量与对象变量

image.png

示例代码

class Student:
    num = 0
    def __init__(self,name):
        self.name = name
        print('Student init :',self.name)
        Student.num = Student.num + 1

    def home_work(self):
        print('my name is :',self.name)

    def delStu(self):
        print('Remove stu :',self.name)
        Student.num = Student.num - 1
        if Student.num == 0:
           print('{} is the last one :'.format(self.name))
        else:
            print('There are {:d} students:'.format(Student.num))

    @classmethod
    def classNum(cls):
        print('the class have {:d} students:'.format(Student.num))

xiaoming = Student('xiaoming')
xiaoming.home_work()

zhangsan = Student('zhangsan')
zhangsan.home_work()

lisi = Student('lisi')
lisi.home_work()

wangwu = Student('wangwu')
wangwu.home_work()

Student.classNum()

wangwu.delStu()
zhangsan.delStu()

Student.classNum()

输出结果

Student init : xiaoming
my name is : xiaoming
Student init : zhangsan
my name is : zhangsan
Student init : lisi
my name is : lisi
Student init : wangwu
my name is : wangwu
the class have 4 students:
Remove stu : wangwu
There are 3 students:
Remove stu : zhangsan
There are 2 students:
the class have 2 students:

对象变量采用 “self.name”访问,类变量采用“Student.num”来访问。当对象变量和类变量同名时,类变量就会被隐藏。还可以使用“self.class.num”来访问类对象。
使用@classmethod来定义类方法,或“@staticmethod”定义静态方法。

继承

示例代码:


image.png

输出结果:


image.png
如何工作:
image.png

相关文章

  • Python3-面向对象编程

    Self 类 基础演示: 输出信息: <__main__.Person object at 0x101ebb588...

  • 面向对象_初识

    目录 面向对象编程介绍 类与对象介绍 私有属性与私有方法 面向对象编程 1. 面向对象编程介绍 面向对象编程:Ob...

  • 谈谈面向对象编程

    何为面向对象编程 面向对象编程简介 面向对象编程(Object-oriented Programming,缩写:O...

  • 面向对象基础

    面向对象编程包括: 面向对象的分析(OOA) 面向对象的设计(OOD) 面向对象的编程实现(OOP) 面向对象思想...

  • python-day14

    一、面向对象编程 编程思想:1.面向对象编程 --> 算法,逻辑2.函数式编程 --> 函数3.面向对象编程 ...

  • PHP全栈学习笔记8

    面向对象的基本概念,面向对象编程,oop,面向对象,面向对象的分析,面向对象的设计,面向对象的编程,什么是类。 类...

  • PHP全栈学习笔记8

    面向对象的基本概念,面向对象编程,oop,面向对象,面向对象的分析,面向对象的设计,面向对象的编程,什么是类。 类...

  • 面向对象浅析

    ### 面向对象编程和面向对象编程语言 面向对象编程的英文缩写是 OOP,全称是 Object Oriented ...

  • 2017-08-14

    面向对象编程用对象的思想去写代码,就是面向对象编程-面向过程-面向对象面向对象编程的特点1.抽象 抽取一样的东西...

  • 面向对象编程,类和对象

    面向对象编程 Java是面向对象的一门编程语言,所以余姚使用者具备面向对象编程的思想。 那么,什么是面向对象编程呢...

网友评论

      本文标题:Python3-面向对象编程

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