题目
实例方法不能使用类名调用。A. 对B. 错
实例方法不能使用类名调用。
A. 对
B. 错
题目解答
答案
A. 对
解析
考查要点:本题主要考查对实例方法调用方式的理解,区分实例方法与类方法、静态方法的使用场景。
解题核心:明确实例方法必须通过实例对象调用,而类方法或静态方法才能通过类名直接调用。关键在于理解实例方法的第一个参数是self,表示必须依赖具体实例存在。
破题关键:若直接使用类名调用未创建实例的方法,会因缺少self绑定而报错,因此实例方法不能用类名调用。
实例方法的定义与调用规则:
- 实例方法是类中未使用
@classmethod或@staticmethod装饰的普通方法,其第一个参数必须是self,代表调用方法的实例。 - 调用方式:必须通过实例对象调用。例如:
class MyClass: def instance_method(self): pass obj = MyClass() obj.instance_method() # 正确 MyClass.instance_method() # 错误,缺少实例 - 类名调用限制:若直接用类名调用实例方法,Python无法自动传入
self,导致TypeError。
结论:实例方法不能使用类名调用,必须通过实例调用。