Ниже приведен пример трех методов, которые имеют практически одинаковых инструкторов, за исключением первого (Tile, Primitive, Cube).
Предположим, что для этих объектов также существуют следующие методы:
Tile.set(int a, int b, int c){ ... }
Primitive.set(int a, int b, int c){ ... }
Cube.set(int a, int b, int c){ ... }
Теперь вот 3 различных метода, которые используют эти методы выше:
void first(Tile tile, int a, int b, int c){
tile.set(a,b,c);
}
void second(Primitive tile, int a, int b, int c){
tile.set(a,b,c);
}
void third(Cube tile, int a, int b, int c){
tile.set(a,b,c);
}
У меня вопрос, возможно ли создать что-то вроде метода монстра, который распознает, если tile (мои данные) это Tile, Primitive или Cube, если предположить, что все они имеют метод .set ?
Примерно так:
void monster(Anything tile, int a, int b, int c){
tile.set(a,b,c);
}
// для lolo //
Хотя я знаю, что это неправильно, поскольку в методе есть 3 инструктора с одинаковым именем, он должен выбрать только 1 из 3, независимо от того, какой тайл:
void monster(Tile tile, Primitive tile, Cube tile, int a, int b, int c){
tile.set(a,b,c);
}