Класс SimpleJavaFileObject
java.lang.Object
javax.tools.SimpleJavaFileObject
- Все реализуемые интерфейсы:
-
FileObject,JavaFileObject
public class SimpleJavaFileObject extends Object implements JavaFileObject
Предоставляет простые реализации большинства методов в JavaFileObject. Этот класс предназначен для наследования и использования в качестве основы для реализации JavaFileObject. Подклассы могут переопределять реализацию и спецификацию любого метода этого класса, при условии соблюдения общего контракта JavaFileObject.
- С тех пор:
- 1.6
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в интерфейсе javax.tools.JavaFileObject
JavaFileObject.Kind
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected final JavaFileObject.Kind |
kind |
Тип этого объекта файла. |
protected final URI |
uri |
URI для этого объекта файла. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает SimpleJavaFileObject заданного типа с заданным URI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
delete() |
Эта реализация ничего не делает. |
Modifier |
getAccessLevel() |
Эта реализация возвращает null. |
CharSequence |
getCharContent |
Эта реализация всегда бросает UnsupportedOperationException. |
JavaFileObject.Kind |
getKind() |
Возвращает тип этого объекта файла. |
long |
getLastModified() |
Эта реализация возвращает 0L. |
String |
getName() |
Возвращает удобочитаемое имя для этого объекта файла. |
NestingKind |
getNestingKind() |
Эта реализация возвращает null. |
boolean |
isNameCompatible |
Эта реализация сравнивает путь своего URI с заданным простым именем. |
InputStream |
openInputStream() |
Эта реализация всегда бросает UnsupportedOperationException. |
OutputStream |
openOutputStream() |
Эта реализация всегда бросает UnsupportedOperationException. |
Reader |
openReader |
Оборачивает результат getCharContent(boolean) в Reader. |
Writer |
openWriter() |
Оборачивает результат openOutputStream в Writer. |
URI |
toUri() |
Возвращает URI, идентифицирующий этот объект файла. |
Подробное описание полей
uri
protected final URI uri
URI данного объекта файла.
kind
protected final JavaFileObject.Kind kind
Тип данного объекта файла.
Подробное описание конструкторов
SimpleJavaFileObject
protected SimpleJavaFileObject(URI uri, JavaFileObject.Kind kind)
Создает SimpleJavaFileObject заданного типа с указанным URI.
- Параметры:
-
uri- URI данного объекта файла -
kind- тип данного объекта файла
Подробное описание методов
toUri
public URI toUri()
Описание скопировано из интерфейса:
FileObjectВозвращает URI, идентифицирующий этот объект файла.
- Указано в:
-
toUriв интерфейсеFileObject - Возвращает:
- URI
getName
public String getName()
Описание скопировано из интерфейса:
FileObjectВозвращает удобочитаемое имя для этого объекта файла. Точное значение, возвращаемое этим методом, не определено, но реализации должны позаботиться об сохранении имён, заданных пользователем. Например, если пользователь вводит имя файла
"BobsApp\Test.java" в командной строке, этот метод должен возвращать
"BobsApp\Test.java", тогда как метод toUri может возвращать
file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java. - Указано в:
-
getNameв интерфейсеFileObject - Возвращает:
- удобочитаемое имя
openInputStream
public InputStream openInputStream() throws IOException
В этой реализации всегда выбрасывается UnsupportedOperationException. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
openInputStreamв интерфейсеFileObject - Возвращает:
- поток ввода
- Исключения:
-
IOException- если произошла ошибка ввода-вывода
openOutputStream
public OutputStream openOutputStream() throws IOException
В этой реализации всегда выбрасывается UnsupportedOperationException. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
openOutputStreamв интерфейсеFileObject - Возвращает:
- поток вывода
- Исключения:
-
IOException- если произошла ошибка ввода-вывода
openReader
public Reader openReader(boolean ignoreEncodingErrors) throws IOException
Оборачивает результат getCharContent(boolean) в поток чтения. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
openReaderв интерфейсеFileObject - Параметры:
-
ignoreEncodingErrors- игнорировать ошибки кодирования, если true - Возвращает:
- поток чтения, оборачивающий результат getCharContent
- Исключения:
-
IllegalStateException- если этот объект файла был открыт для записи и не поддерживает чтение -
UnsupportedOperationException- если этот тип объекта файла не поддерживает доступ к символам -
IOException- если произошла ошибка ввода-вывода
getCharContent
public CharSequence getCharContent(boolean ignoreEncodingErrors) throws IOException
В этой реализации всегда выбрасывается UnsupportedOperationException. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
getCharContentв интерфейсеFileObject - Параметры:
-
ignoreEncodingErrors- игнорировать ошибки кодирования, если true - Возвращает:
- последовательность символов, если доступна;
nullиначе - Исключения:
-
IOException- если произошла ошибка ввода-вывода
openWriter
public Writer openWriter() throws IOException
Оборачивает результат openOutputStream в поток записи. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
openWriterв интерфейсеFileObject - Возвращает:
- поток записи, оборачивающий результат openOutputStream
- Исключения:
-
IllegalStateException- если этот объект файла был открыт для чтения и не поддерживает запись -
UnsupportedOperationException- если этот тип объекта файла не поддерживает доступ к символам -
IOException- если произошла ошибка ввода-вывода
getLastModified
public long getLastModified()
В этой реализации возвращается
0L. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса FileObject.- Указано в:
-
getLastModifiedв интерфейсеFileObject - Возвращает:
0L
delete
public boolean delete()
В этой реализации ничего не делается. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса
FileObject.- Указано в:
-
deleteв интерфейсеFileObject - Возвращает:
false
getKind
public JavaFileObject.Kind getKind()
Описание скопировано из интерфейса:
JavaFileObjectВозвращает тип этого объекта файла.
- Указано в:
-
getKindв интерфейсеJavaFileObject - Возвращает:
this.kind
isNameCompatible
public boolean isNameCompatible(String simpleName, JavaFileObject.Kind kind)
В этой реализации сравнивается путь его URI с заданным простым именем. Этот метод возвращает true, если заданный тип равен типу этого объекта, и если путь равен
simpleName + kind.extension или заканчивается на
"/" + simpleName + kind.extension. Этот метод вызывает getKind() и toUri() и не обращается напрямую к полям uri и kind.
Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса JavaFileObject.
- Указано в:
-
isNameCompatibleв интерфейсеJavaFileObject - Параметры:
-
simpleName- простое имя класса -
kind- тип - Возвращает:
-
trueесли этот объект файла совместим;falseиначе
getNestingKind
public NestingKind getNestingKind()
В этой реализации возвращается
null. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса JavaFileObject.- Указано в:
-
getNestingKindв интерфейсеJavaFileObject - Возвращает:
- тип вложенности, или
nullесли тип вложенности неизвестен
getAccessLevel
public Modifier getAccessLevel()
В этой реализации возвращается
null. Подклассы могут изменить это поведение, пока соблюдается контракт интерфейса JavaFileObject.- Указано в:
-
getAccessLevelв интерфейсеJavaFileObject - Возвращает:
- уровень доступа
© 1993, 2021, 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://docs.oracle.com/en/java/javase/17/docs/api/java.compiler/javax/tools/SimpleJavaFileObject.html