Я делаю приложение для Android, которое может запускать разные модели ML, и я хочу создать несколько классов для представления данных результатов, каждая модель ML имеет свои переменные / результат, например, проблема классификации имеет метки между темдругие не имеют их.
Я хочу использовать наследование в Java и делать что-то вроде Результат в качестве интерфейса и отца ClassificationResult и RegresionResult так что я мог бы сделать:
Arraylist<Result> resultList;
ClassificationResult cr = new ClassificationResult...
RegresionResult rr = new RegresionResult...
resultList.add(cr)
resultList.add(rr)
Но я сталкиваюсь с проблемой, что я не могу вызывать методы от детей, таких как ClassificationResult.getLabels () (я мог бы иметь все методы всех детей в интерфейсе, но это кажетсястранно для меня)
Я видел некоторые шаблоны, Factory и Builder, но я столкнулся с ранее описанной проблемой с шаблоном Factory, и с Builder (имеющим все переменные в одном классе) большинство из них не будут инициализированы.
Буду признателен за некоторые идеи о том, как я должен разработать это