interface Dream {
        Hobby HOBBY = new Hobby();
    }
скажите, а зачем нам эта переменная? Зачем нам вообще создавать экземпляр класса-наследника из интерфейса? Для того, чтобы создавать экземпляры кодом Dream.HOBBY., вместо Hobby HOBBY = new Hobby(); ??? Но ведь в таком случае мы можем создать только 1 экземпяр?! Ведь даже если написать
Dream.HOBBY.
Dream.HOBBY.
Dream.HOBBY.
Ведь будет только одна переменная HOBBY с ссылкой на один новый экземпляр Hobby