Класс Pizza читается из конфигурации и инстанциируется через Class.forName, он имплементирует интерфейс IMeal. Вопрос, собственно, состоит в том как правильно скастовать прочитанный Class к интерфейсу IMeal?
private static IMeal readConfig() {
Path dependencyPath = Paths.get("gof/src/main/java/resources/config.txt");
File file = dependencyPath.toFile();
IMeal IMeal = null;
try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
String line = reader.readLine();
Class mealClass = Class.forName(line);
IMeal = IMeal.class.cast(mealClass);
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
return IMeal;
}