TypeReference' 为 abstract;无法实例化
时间: 2024-06-13 09:05:43
浏览: 18
根据提供的引用内容,我们可以得知 `Ty[per](https://geek.csdn.net/educolumn/2c6ed1be7edac16b3c9a0c3228eaff0c?spm=1055.2569.3001.10083)eference` 是一个抽象类,因此不能被实例化。抽象类是一种特殊的类,它不能被实例化,只能被继承。抽象类中可以包含抽象方法,这些方法只有[声明](https://geek.csdn.net/educolumn/2515e40123df6eda04f27b9a3a9cb89f?spm=1055.2569.3001.10083),没有具体的实现。子类必须实现所有的抽象方法才能被实例化。
如果你想使用 `Ty[per](https://geek.csdn.net/educolumn/2c6ed1be7edac16b3c9a0c3228eaff0c?spm=1055.2569.3001.10083)eference`,你需要创建一个继承自 `Ty[per](https://geek.csdn.net/educolumn/2c6ed1be7edac16b3c9a0c3228eaff0c?spm=1055.2569.3001.10083)eference` 的子类,并实现其中的抽象方法。例如:
```python
from typing import TypeVar
from typing_extensions import TypeReference
T = TypeVar('T')
class MyType(TypeReference[T]):
def __init__(self, cls: T):
super().__init__(cls)
def __repr__(self):
return f'MyType({self.__forward_arg__!r})'
def __str__(self):
return str(self.__forward_arg__)
在上面的[代码](https://geek.csdn.net/educolumn/1572ef9b473b4e00f6b2bf6d428b7c27?spm=1055.2569.3001.10083)中,我们创建了一个名为 `MyType` 的子类,它继承自 `TypeReference`。我们实现了 `__init__`、`__repr__` 和 `__str__` 方法,这些方法都是非抽象方法,因此我们可以实例化 `MyType` 类。
相关问题
'PrincipalManager' 为 abstract;无法实例化
这是因为抽象类无法实例化,只能作为其他类的基类被继承。抽象类中通常包
'MongoClient' 为 abstract;无法实例化
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)