Если вам действительно не разрешено использовать какие-либо методы установки, и ваша переменная имеет частный доступ, тогда вам придется обманывать систему с помощью API отражения. Я знаю, какой язык программирования вы используете, но вот пример того, как вы бы это сделали в java
class Test<T> //Template cause u said it can have multiple values {
private T secret;
abstract void set(T myvalue);//this is void method u will be overriding
}
class A extends Test<Integer>
{
void set(Integer value)
{
Field field=Test.class.getDeclaredField("secret");
field.setAccessible(true);
field.setValue(this,5);
}
}
class B extends Test<Float>
{
void set(Float value)
{
Fieldfield=Test.class.getDeclaredField("secret");
field.setAccessible(true);
field.setValue(this,5.5f);
}
}
Как вы можете видеть, у нас нет доступа к переменной secret в классе T из наших подклассов, но мы, если мы просто знаем его имя, мы можем взломать его с помощью размышлений. Reflection - это API, доступный на всех языках. Опять же, не знаю, почему вы будете это делать, но, как предложили комментарии, получите лучшее задание -_-