Как именно работает instanceof? Когда у меня есть иерархия объектов, которые расширяют и реализуют друг друга, работает ли экземпляр чего-либо через эти обе линии?
Например, я хочу знать, является ли мой объект экземпляром List
или ArrayList
или Collection
?
Я изучил это дерево, http://docs.oracle.com/javase/6/docs/api/java/util/package-tree.html
И, кажется, все они, конечно, подпадают под Object
, но то, что мне нужно, я думаю, это AbstractCollection
или даже обычный Collection
, потому что это кажется самым высоким в иерархии.
Будет ли все в порядке, если я проверяю объект только по Collection
, чтобы охватить все эти 3 класса?