问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

python面向对象14:类方法与实例方法与静态方法

发布网友 发布时间:2022-04-21 05:58

我来回答

1个回答

热心网友 时间:2024-01-07 02:11

一、实例方法,类方法,静态方法

我们首先写一个类,里面包含这三种方法。

可以看到,我们用到了两个装饰器。

我们用类和实例分别调用下类方法

我们用类和实例分别调用下静态方法

静态方法其实就是把一个普通的函数写在类里,与直接在外层写一个函数是一样的,本质上是一个函数。

为了方便理解,我们分别打印下这些方法的类型

通过type()查看对象是方法还是函数

此外,还可以通过inspect模块判断某个对象是否是某种类型,返回布尔值。

用法


小Tips:概念理解

直接def定义的,我们叫做函数

把函数放到类里,我们叫做方法

方法可以通过装饰器staticmethod转为(放在方法里的)函数

继承

一个类继承另一个类时,会自动获得另一个类的所有属性和方法,被继承的类称之为父类,新类称为子类。子类拥有父类所有的属性和方法,并且可以定义自己的属性和方法

我们以上边的Rectangle类为父类来试一下


1)完全继承

可以看到,子类完全继承父类后,可以直接调用父类的所有方法。

2)部分继承

部分继承:继承父类后,修改父类的同名方法

我们试一下,Square继承Rectangle后,修改__init__()方法

3)拓展父类的方法

在保留父类中某个方法的代码同时,对方法进行拓展

可以在方法中加入"super().方法名"来实现


4)@property

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
win10电脑hdmiwin10笔记本hdmi连接电视没反应 平板电脑与电视机联接华为平板怎么投屏到电视上 长虹chiq电脑无线投影如何无线把电脑屏幕投影到电视屏幕上 模拟电视电脑系统智能电视怎么变成电脑系统 ops电脑加装固态硬盘ops电脑是什么意思 我想问一下立宇泰电子的ARMSYS6410开发板可以外接什么模块? 小心那些处理过的2元绿幽灵,教你这几招就能识别! 如何辨别人民币是否水洗过,刚有兴趣做收藏可去买第四套人民币还有是否水... oppor7splus手机怎么样现在?照相好不好。是多会儿出来的机子呢。目前... ps怎么改像素大小且不模糊 python面向对象的问题 Python编程 面向对象程序设计 python程序题 Python作业,面向对象程序设计? 利用Python面向对象的编程,求出正方形(4),长方形(3,5)的面积和周长,代码怎么写? 大象象征着什么意义 python程序题求解 大象有哪些种类 python的两种编程方法 世界上最大的大象在哪里.?? 一个python编程题目——面向对象的 大象的种类? Python面向对象编程之继承与多态详解 python面向对象编程作业 大象的生活习性是什么 Python程序设计,求大神解答 大象是什么动物!!? Python面向对象编程题 大象的特点是什么? python面向对象编程题? 如何深入理解Python中的面向对象的思维 python 面向对象基础 新手求教python 面向对象编程的一个问题 excel中怎么按姓名排序? excel怎样让两张表的顺序相同? excel怎么把两个表格同一个数据变成一个顺序 在excel表格中怎么让两列顺序一致 魅族m681q密码忘了如何解锁 excel两列乱序如何使姓名一一对应? excel中两张排序不同的怎样表实现排序一致 Excel如何使得G列和A列相同数值的排列到同一行? 怎么 把2个excel表所有格式都变成相同的 excel如何将同一页中两个表格相同内容对齐行 404 Not Found 红蚂蚁电动四轮车车顶漏水 红蚂蚁四轮电动车换上新电池怎么没有电? 红蚂蚁电动车四轮车是超标的吗? 红蚂蚁电动车怎么样 红蚂蚁电动车四轮质量怎么样 红蚂蚁电动三轮车有新国标的吗?