Нормально ли использовать Object в сигнатуре метода не дженерика?
Имеется некоторый метод, параметр в котором объявлен как Object ( createMeth(Object object, Another arg...) и, соответственно, метод работает с несколькими разными классами, выполняя некоторую логику, где у этого объекта берут определенный параметр с проверкой на его наличие.
К сожалению, я не совсем понял что происходит в коде и подробно описать его функционал не могу, но принципиально, если это не какой-нибудь контейнер, нормально(в определенных случаях) ли использовать класс Object? Не лучше ли всегда перегружать метод или имплементить интерфейс и использовать его вместо Object? Мне кажется, что человек (фулстэк) который писал этот код использовал конструкции более типичные для js, чем для java
Не нормально. Во-первых, глупо использовать язык со статической типизацией и не пользоваться её преимуществами. Во-вторых, "взять у объекта параметр с проверкой на наличие" видимо обозначает использование рефлексии, что медленно и небезопасно.
Почему рефлексия медленно работает очевидно, но почему она небезопасна (при условии что никто не будет кидать непредусмотренный объект)? Гугл не захотел делиться своими знаниями с неофитом...
при условии что никто не будет кидать непредусмотренный объект
если бы это условие и правда соблюдалось, люди бы не придумали статическую типизацию. Вот и весь ответ. Не безопасно потому что кто нибудь, когда нибудь все таки передаст туда, что-то, не то что нужно.