Фабрика создает сообщение по шаблону добавляя объекты, а
getFormattedMessage() возвращает отформатированную строку.
Например:
String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
Message message = new ReusableMessageFactory().newMessage("{} Very important message", date);
System.out.println(message.getFormattedMessage());
Вернет
2021-08-29 16:37:24 Very important message
а
String date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
Message message = new ReusableMessageFactory().newMessage("{} [{}] Very important message", date, Level.WARN);
System.out.println(message.getFormattedMessage());
как вы уже догадались, напечатает:
2021-08-29 16:43:57 [WARN] Very important message