Интерфейс Location
- Все суперинтерфейсы:
-
Comparable<Location>,Mirror
public interface Location extends Mirror, Comparable<Location>
Доступность номера строки для места будет зависеть от уровня отладочной информации, доступной от целевой виртуальной машины.
Несколько зеркальных интерфейсов имеют места. Каждый такой зеркало расширяет интерфейс Locatable.
Информация о источнике для Location зависит от слоя, который используется. Слой - это уровень исходного кода в последовательности переводов. Например, скажем, программа baz написана на языке программирования "Foo", затем переведена на язык "Bar" и, наконец, переведена на язык программирования Java. Слой языка программирования Java называется "Java", предположим, что другие слои называются "Foo" и "Bar". Данное место (как отображается методами sourceName() и lineNumber()) может находиться на строке 14 файла "baz.foo" в слое "Foo", строке 23 файла "baz.bar" в слое "Bar" и строке 71 файла "Java" слоя. Обратите внимание, что, хотя язык программирования Java может иметь только один исходный файл для типа ссылки, это ограничение не распространяется на другие слои - таким образом, каждый Location должен быть проконсультирован для определения его пути к источнику. Запросы, которые не указывают слой (sourceName(), sourcePath() и lineNumber()) используют по умолчанию слой виртуальной машины (VirtualMachine.getDefaultStratum()). Если указанный слой (явно указанный параметром метода или неявно как по умолчанию виртуальной машины) null или не доступен в объявляющем типе, используется слой по умолчанию объявляющего типа (declaringType().defaultStratum()). Обратите внимание, что в обычном случае, кода, происходящего из исходного кода языка программирования Java, будет только один слой ("Java"), и он будет возвращен в качестве значения по умолчанию. Чтобы определить доступные слои, используйте ReferenceType.availableStrata().
- С тех пор:
- 1.3
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
long |
codeIndex() |
Возвращает позицию кода в методе данного Location. |
ReferenceType |
declaringType() |
Возвращает тип, к которому принадлежит этот Location. |
boolean |
equals |
Сравнивает указанный Object с этим Location на равенство. |
int |
hashCode() |
Возвращает значение хэш-кода для этого Location. |
int |
lineNumber() |
Возвращает номер строки этого Location. |
int |
lineNumber |
Номер строки данного Location. |
Method |
method() |
Возвращает метод, содержащий этот Location. |
String |
sourceName() |
Возвращает идентифицирующее имя источника, соответствующее данному месту. |
String |
sourceName |
Возвращает идентифицирующее имя источника, соответствующее данному месту. |
String |
sourcePath() |
Возвращает путь к источнику, соответствующему данному месту. |
String |
sourcePath |
Возвращает путь к источнику, соответствующему данному месту. |
Методы, объявленные в интерфейсе java.lang.Comparable
compareTo
Методы, объявленные в интерфейсе com.sun.jdi.Mirror
toString, virtualMachine
Подробное описание методов
declaringType
ReferenceType declaringType()
ClassType, но исполняемые локации также могут существовать в статическом инициализаторе InterfaceType.- Возвращает:
- содержащий эту Location
ReferenceType.
method
codeIndex
long codeIndex()
- Возвращает:
- значение типа long, представляющее позицию внутри метода, или -1, если локация находится в нативном методе.
sourceName
String sourceName() throws AbsentInformationException
Этот метод эквивалентен sourceName(vm.getDefaultStratum()) — см. sourceName(String) для получения дополнительной информации.
- Возвращает:
- строка, определяющая источник
- Исключения:
-
AbsentInformationException— если имя источника неизвестно
sourceName
String sourceName(String stratum) throws AbsentInformationException
Возвращаемое имя относится к указанному слою (см. class comment для описания слоев).
Возвращаемая строка — это имя файла источника без пути для этой Location. Например, java.lang.Thread вернёт "Thread.java".
- Параметры:
-
stratum— слой для получения информации, илиnullдля определения слоя по умолчанию для объявляемого типа. - Возвращает:
- строка, определяющая источник
- Исключения:
-
AbsentInformationException— если имя источника неизвестно - С тех пор как:
- 1.4
sourcePath
String sourcePath() throws AbsentInformationException
Этот метод эквивалентен sourcePath(vm.getDefaultStratum()) — см. sourcePath(String) для получения дополнительной информации.
- Возвращает:
- строка, определяющая источник
- Исключения:
-
AbsentInformationException— если имя источника неизвестно
sourcePath
String sourcePath(String stratum) throws AbsentInformationException
Возвращаемый путь относится к указанному слою (см. class comment для описания слоев).
В реализации по умолчанию, для слоев, которые не явно не указывают путь к источнику (слой Java programming language этого не делает), возвращаемая строка — это имя пакета declaringType(), преобразованное в зависимый от платформы путь, за которым следует имя файла источника без пути для данной локации (sourceName(stratum)). Например, на платформе Windows, java.lang.Thread вернёт "java\lang\Thread.java".
- Параметры:
-
stratum— слой для получения информации, илиnullдля определения слоя по умолчанию для объявляемого типа. - Возвращает:
- строка, определяющая источник
- Исключения:
-
AbsentInformationException— если имя источника неизвестно - С тех пор как:
- 1.4
lineNumber
int lineNumber()
Этот метод эквивалентен lineNumber(vm.getDefaultStratum()) — см. lineNumber(String) для получения дополнительной информации.
- Возвращает:
- целое число, определяющее строку в источнике; возвращает -1, если информация недоступна; в частности, всегда возвращает -1 для нативных методов.
lineNumber
int lineNumber(String stratum)
sourceName(stratum). Возвращаемый номер строки относится к указанному слою (см. class comment для описания слоев).
- Параметры:
-
stratum— слой для получения информации, илиnullдля определения слоя по умолчанию для объявляемого типа. - Возвращает:
- целое число, определяющее строку в источнике; возвращает -1, если информация недоступна; в частности, всегда возвращает -1 для нативных методов.
- С тех пор как:
- 1.4
equals
boolean equals(Object obj)
hashCode
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/jdk.jdi/com/sun/jdi/Location.html