前言
小伙伴们大家好呀,我们都知道学习软件测试需要掌握一门开发语言,python是所有开发语言中比较适合新手学习的一门语言,今天的这篇文章呢主要介绍python面对对象中的类和继承,包括类方法、静态方法、只读属性、继承等。
一、类方法
1.类方法定义
使用装饰器@classmethod装饰,且第一个参数必须是当前类对象,该参数名一般约定为“cls",通过它来传递类的属性和方法(不能传递实例属性和实例方法),跟实例方法的self用法相似。
2.类方法的调用
实例对象和类对象都可以调用
3.应用场景
在需要站在类的角度执行某个行为时,那么就可以定义为类方法
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def student_info(self):
"""实例方法"""
print("-----student_info-----")
print('name:{}'.format(self.name))
print('age:{}'.format(self.age))
@classmethod # 带有@classmethod标志的就是类方法,@xxx 就是装饰器
def class_info(cls): # cls与self的用法一致,self代表的是实例对象本身,cls代表的是类本身
"""类方法""" # 应用场景:需要站在类的角度执行某个行为时,就定义为类方法
print("-----class_info-----")
print('在校学生')
print("cls:", cls)
case = Student('张三', 22)
case.student_info()
case.class_info() # 通过实例对象访问类方法
Student.class_info() # 通过类对象访问类方法
运行结果:
C:\software\python\python.exe D:/learn/python18_http_request/exercise/test.py
-----student_info-----
name:张三
age:22
-----class_info-----
在校学生
cls: <class '__main__.Student'>
-----class_info-----
在校学生
cls: <class '__main__.Student'>
Process finished with exit code 0
二、静态方法
(了解即可,在自动化测试中暂时用不到)
1.静态方法定义
使用装饰器@staticmethod装饰,参数随意,不需要“self“和“cls"参数,但是方法