zoukankan      html  css  js  c++  java
  • Python3面向对象编程总结

    自学笔记:逻辑可能比较混乱,想到哪说到哪,可能存在不少的问题欢迎指出。

    创建一个类:

    最简单的一个类

    在python中类的命名必须以字母或者下画线开头,并且只能包含字母、下画线和数字。另外推荐使用驼峰命名方式(大写字母开头,随后的任意一个单词都以大写字母开头)
    python最简单的一个类的创建
    class MyFirstClass:
    	pass

    类的属性和方法

    在类中我们还可以为其添加属性和方法
    class MyFirstClass:
        def __init__(self):
            self.x = 1
            self.y = 1
    
        def show(self):
            print(self.x,self.y)
    
    c = MyFirstClass()
    c.show()
    其中self.x和self.y为该类的属性,show()为该类的方法
    类中的方法的定义方式和普通函数相同,都是以关键字def开头,但是有一点不同的是类中的方法有一个必需的参数,通常这个参数被命名为self,但是我们实例化类后调用show方法的时候并没有传入参数,这是因为python自动帮我们做了,当我们调用c对象的show方法的时候,python会自动将c对象传给show方法了。因此下面这个调用方式运行结果是一样的。
    c = MyFirstClass()
    MyFirstClass.show(c)
    其实类中的方法本质上就是一个函数,我们可以在外部调用也可以在类中调用,例如:
    class Point:
        def __init__(self, x ,y ):
            self.x = x
            self.y = y
    
        def reset(self):
            self.x = 0
            self.y = 0
            self.show()
    
        def show(self):
            print(self.x, self.y)
    
    p = Point(1,1)
    p.reset()
    运行结果为:0  0

    类的初始化

    一般的编程语言中都有一个叫构造函数的特殊方法,当它被创建的时候会创建和初始化对象,这一点Python会有些许不同,python有一个构造函数和一个初始化函数,一般情况下构造函数很少被用到,除非是想实现一些特别的操作,所以在此主要说一下类的初始化。我们在之前的示例中有一个方法名为__init__(),其实这个方法就是给类进行初始化操作的。当我们实例化的时候会首先执行__init__()方法,因此当__init__()方法需要传递参数的时候我们在实例化的时候同样需要传递参数,不然会报错。
    由于方法本质上就是函数,当我们不想传递参数的时候也可以同函数的操作一样使用默认参数。
    def __init__(self, x=0, y=0):
        self.x = x
        self.y = y

    面向对象三个基本特征

    面向对象编程的三个基本特征分别为:封装、继承、多态,下面一一说明。

    继承

    继承就是让一个类获得另一个类的属性和方法,在Python中所有的类都是object类的子类,只是在实际的使用中我们并不需要表明,python在后台自己帮我们做了




    努力成为一名GEEK!
  • 相关阅读:
    一种简洁明了的权限管理系统
    css小技巧(1)
    多功能旋转木马轮播实例
    jquery双向列表选择器select版
    jquery双向列表选择器DIV模拟版
    单击页面任何地方关闭隐藏层
    用户登录体验之密码框设计
    扁平化设计的美感
    分析网站的用户行为
    app的架构和导航设计
  • 原文地址:https://www.cnblogs.com/FanMLei/p/10501025.html
Copyright © 2011-2022 走看看