<分区>
背景语境:
我有一个代表复杂 3D 模型的非通用类。我还有一系列标准的 3D 几何类(Sphere、Cube、Cuboid),它们都继承自一个抽象类,因此所有子类都继承了相同的字段和函数。因此,每个类都需要能够使用 Complex 3D 模型类,它不是从抽象类继承的(它不需要相同的字段/函数)。
所以我想将所有子类与复杂模型类一起使用。具体来说,一个子类可以在用户需要时使用复杂模型,因此只要用户需要,它就会作为一个字段保存到这个类中。复杂类需要访问这些对象的字段和函数,因此我认为使用通用函数可以应用于所有具有相同字段/函数的简单 3D 网格类。
问题
假设我有一个非泛型类,我希望该类的一个字段是泛型类型。我希望非泛型类能够处理各种用户创建的类型。
我想要一个可以设置通用字段的非通用类中的通用方法,如下所示:
void <T> setGenericObject(T object){
genericField = object;
}
但是,我不知道如何正确声明通用字段。我不想只为它的一个小领域创建一个通用类(因为与其他对象一起工作只是该类功能的一小部分)。我将如何在我的类中正确声明此 genericField 变量以使其正常工作?