Rakovskiy, Пример хреноватый конечно. Мы укажем, что createService() возвращает Service. SomeService уже вернуть не получится и выполнение прервётся. Профит? Разумеется.
В нынешнем виде получим ошибку, что метода у полученного значения нет. И хорошо, если мы сразу вызываем этот метод. Исправить легко. В ином случае придётся разгребать стектрейс. Выяснить, где оно создаётся уже немного сложнее.