FilteredFieldStream used by heap walking functions to iterate through klass/superclasses/interfaces fields are known to have poor performance (see [JDK-8317692](https://bugs.openjdk.org/browse/JDK-8317692) for details). Heap walking API implementation is the last user of the klasses. The fix reworks iteration through klass/superclasses/interfaces fields and drops FilteredFieldStream-related code. Additionally removed/updated includes of reflectionUtils.hpp.
Testing: - tier1..4; - test/hotspot/jtreg/vmTestbase/nsk/jvmti (contains tests for different heap walking functions); - new test from #17580 (now the test runs several times faster). ------------- Commit messages: - fix Changes: https://git.openjdk.org/jdk/pull/17661/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17661&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8318566 Stats: 290 lines in 10 files changed: 41 ins; 230 del; 19 mod Patch: https://git.openjdk.org/jdk/pull/17661.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/17661/head:pull/17661 PR: https://git.openjdk.org/jdk/pull/17661