Обычно вы измеряете их не из приложения, а из-за запуска другого инструмента на том же хосте.
Если вы просто хотите увидеть влияние на операционную систему хоста, вы можете использовать программу типа top
(на * nix box) или старый добрый диспетчер задач в Windows, чтобы увидеть загрузку процессора / памяти / ввода-вывода вашего Java-процесса (обычно контейнер сервлетов, такой как Tomcat).
Если вам нужна более подробная информация о самом процессе Java, вы можете подключить JConsole или jvisualvm , чтобы получить информацию о ВМ (включая память и ЦП) для самого процесса. (В Java 6 вы должны иметь возможность делать это с локального компьютера без передачи каких-либо параметров процессу Java при запуске; для Java 5 или удаленных подключений вам нужно будет передать аргументы командной строки процессу Java, чтобы (удаленные) соединения JMX.)
Наконец, если вы хотите действительно подробных сведений об использовании ресурса, вплоть до производительности различных методов (что, как вам кажется, вам нужно), вам нужно использовать профилировщик , Есть несколько таких для Java - с YourKit и JProfiler, являющимися крупнейшими коммерческими (по моему безусловному мнению). Я считаю, что в среде IDE NetBeans также имеется встроенный приличный профилировщик. Процесс их подключения к вашему приложению будет варьироваться в зависимости от самого приложения, но все это, как правило, позволит вам «детализировать» процессорное время, чтобы увидеть, какие классы / методы заняли наибольшее количество циклов, а также выполнить детализацию. в память, чтобы увидеть, какие классы занимают больше всего памяти.