随机定义一个类,类中包含2个类属性,两个 方法,其中一个构造方法,一个实例方法。并实现类外添加类属性,修改类属性,类外添加实例属性,同时测试对类厲性的修改。
时间: 2024-10-11 08:12:24 浏览: 39
假设我们正在创建一个简单的Python类`Person`,它有两个基本属性(姓名和年龄),一个构造方法用于初始化这些属性,以及一个实例方法(打招呼)。类外可以动态地添加类属性或实例属性。
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def say_hello(self):
return f"Hello, my name is {self.name} and I am {self.age} years old."
# 类外定义类属性(如电话号码)
Person.telephone_number = "1234567890"
# 创建一个Person对象
person1 = Person("Alice", 25)
# 在类外部直接修改类属性
Person.telephone_number = "0987654321"
print(Person.telephone_number) # 输出:0987654321
# 在类外部添加实例属性
person1.gender = "Female"
print(person1.gender) # 输出:Female
# 测试实例方法
print(person1.say_hello()) # 输出:Hello, my name is Alice and I am 25 years old.
# 修改个人实例属性
person1.age += 1
print(person1.age) # 输出:26
# 现在如果尝试在类外修改已声明的实例方法,会报错,因为这是不推荐的做法
# person1.say_hello = lambda: "New greeting" # TypeError: can't set attributes of built-in/extension type 'function'
```
阅读全文