设计并实现一个ObjectCounter类,要求: (1)对系统中现存的本类实例计数; (2)每个对象都有唯一的整型ID,按照创建的次序建立; (3)获取当前系统中本类对象的个数; (4)获取每个对象的ID;
时间: 2023-11-28 07:50:16 浏览: 74
对象计数问题
以下是一个可能的ObjectCounter类的实现:
```python
class ObjectCounter:
count = 0 # 类属性,记录当前系统中本类对象的个数
def __init__(self):
ObjectCounter.count += 1
self.id = ObjectCounter.count # 对象属性,记录该对象的唯一ID
@classmethod
def get_count(cls):
return cls.count
def get_id(self):
return self.id
```
这个类中,我们使用了类属性 `count` 来记录当前系统中本类对象的个数。每次创建一个新的对象时,我们将 `count` 自增,并将自增后的值赋给该对象的 `id` 属性。为了方便查询当前系统中本类对象的个数,我们实现了一个类方法 `get_count`。为了方便查询每个对象的唯一ID,我们实现了一个实例方法 `get_id`。
阅读全文