您的位置:首页 > 编程语言 > Python开发

Day6 Python面向对象编程学习笔记6(方法总览)

2020-03-28 20:08 871 查看

在面向对象编程里面,方法的写法与函数的写法大致相似,两者最主要的区别在于调用的方式上
一、方法初体验:

def Function():
print(1)
print(2)
print(3)
Function()   #需要调用函数的时候,编写好函数后直接输入函数就可以了

class Person:
def Function(self): #关于self是个什么后文再介绍
print(1)
print(2)
print(3)
p=Person()
p.Function()  #关于方法的调用需要先存在一个对象(方法是对对象起作用的)

二、方法的分类:
对于方法的第一个所接受的数据来划分为:1.实例方法,2.类方法,3.静态方法

class Person:
def shilifangfa(self):   #self是一个类实例化出来的一个实例
print("这是一个实例方法",self)
@classmethod
def leifangfa(cls):     #cls是一个类
print("这是一个类方法",cls)
@staticmethod
def jintaifanffa():
print("这是一个静态方法")  #静态方法不接受任何数据参数
#实例方法的调用
p=Person()
p.shilifanffa()   #打印出相应地内容和p
#类方法的调用
Person.leifangfa()  #打印出相应内容和class
#静态方法的调用
Person.jintaifangfa()
p.jintaifangfa() #以上两句都打印出“这是一个静态方法”

三、方法的存储
直接上代码

class Person:
def shilifangfa(self):   #self是一个类实例化出来的一个实例
print("这是一个实例方法",self)
@classmethod
def leifangfa(cls):     #cls是一个类
print("这是一个类方法",cls)
@staticmethod
def jintaifanffa():
print("这是一个静态方法")  #静态方法不接受任何数据参数
p=Person()
print(p.__dict__)   #打印出一个空字典
print(Person.__dict__)   #打印出各种方法
def run():
print("run")
p.age=run  #这里不运行函数
print(p.__dict__)  #会显示出这个函数及其在内存中的地址
  • 点赞
  • 收藏
  • 分享
  • 文章举报
DeepThinking-anything 发布了12 篇原创文章 · 获赞 0 · 访问量 106 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: