javax.tools

接口
异常
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  JavaFileObject.Kind kind
          此文件对象的种类。
protected  URI uri
          此文件对象的 URI。
 
构造方法摘要
protected SimpleJavaFileObject(URI uri, JavaFileObject.Kind kind)
          使用给定 URI 构建给定种类的 SimpleJavaFileObject。
 
方法摘要
 boolean delete()
          此实现不执行任何操作。
 Modifier getAccessLevel()
          此实现返回 null
 CharSequence getCharContent(boolean ignoreEncodingErrors)
          此实现总是抛出 UnsupportedOperationException
 JavaFileObject.Kind getKind()
          获取此文件对象的种类。
 long getLastModified()
          此实现返回 0L
 String getName()
          获取此文件对象的用户友好 (user-friendly) 的名称。
 NestingKind getNestingKind()
          此实现返回 null
 boolean isNameCompatible(String simpleName, JavaFileObject.Kind kind)
          此实现对其 URI 路径和给定简单名称进行比较。
 InputStream openInputStream()
          此实现总是抛出 UnsupportedOperationException
 OutputStream openOutputStream()
          此实现总是抛出 UnsupportedOperationException
 Reader openReader(boolean ignoreEncodingErrors)
          在 Reader 中包装 getCharContent(boolean) 的结果。
 Writer openWriter()
          在 Writer 中包装 openOutputStream 的结果。
 String toString()
          返回该对象的字符串表示。
 URI toUri()
          返回标识此文件对象的 URI。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

字段详细信息

uri

protected final URI uri
此文件对象的 URI。


kind

protected final JavaFileObject.Kind kind
此文件对象的种类。

构造方法详细信息

SimpleJavaFileObject

protected SimpleJavaFileObject(URI uri,
                               JavaFileObject.Kind kind)
使用给定 URI 构建给定种类的 SimpleJavaFileObject。

参数:
uri - 此文件对象的 URI
kind - 此文件对象的种类
方法详细信息

toUri

public URI toUri()
从接口 FileObject 复制的描述
返回标识此文件对象的 URI。

指定者:
接口 FileObject 中的 toUri
返回:
URI

getName

public String getName()
从接口 FileObject 复制的描述
获取此文件对象的用户友好 (user-friendly) 的名称。没有指定返回的准确值,但是实现应该负责保存用户给定的名称。例如,如果用户在命令行中写入文件名 "BobsApp\Test.java",则此方法应该返回 "BobsApp\Test.java",而 toUri 方法可能返回 file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java

指定者:
接口 FileObject 中的 getName
返回:
用户友好的名称

openInputStream

public InputStream openInputStream()
                            throws IOException
此实现总是抛出 UnsupportedOperationException。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 openInputStream
返回:
InputStream
抛出:
IOException - 如果发生 I/O 错误

openOutputStream

public OutputStream openOutputStream()
                              throws IOException
此实现总是抛出 UnsupportedOperationException。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 openOutputStream
返回:
OutputStream
抛出:
IOException - 如果发生 I/O 错误

openReader

public Reader openReader(boolean ignoreEncodingErrors)
                  throws IOException
在 Reader 中包装 getCharContent(boolean) 的结果。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 openReader
参数:
ignoreEncodingErrors - 如果为 true,则忽略编码错误
返回:
包装 getCharContent 结果的 Reader
抛出:
IllegalStateException - 如果此文件对象是为写入而打开的,不支持读取操作
UnsupportedOperationException - 如果这种文件对象不支持字符访问
IOException - 如果发生 I/O 错误

getCharContent

public CharSequence getCharContent(boolean ignoreEncodingErrors)
                            throws IOException
此实现总是抛出 UnsupportedOperationException。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 getCharContent
参数:
ignoreEncodingErrors - 如果为 true,则忽略编码错误
返回:
CharSequence(如果有);否则返回 null
抛出:
IOException - 如果发生 I/O 错误

openWriter

public Writer openWriter()
                  throws IOException
在 Writer 中包装 openOutputStream 的结果。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 openWriter
返回:
包装 openOutputStream 结果的 Writer
抛出:
IllegalStateException - 如果此文件对象是为读取而打开的,不支持写入操作
UnsupportedOperationException - 如果这种文件对象不支持字符访问
IOException - 如果发生 I/O 错误

getLastModified

public long getLastModified()
此实现返回 0L。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 getLastModified
返回:
0L

delete

public boolean delete()
此实现不执行任何操作。子类可以更改此行为,只要不违背 FileObject 的协定。

指定者:
接口 FileObject 中的 delete
返回:
false

getKind

public JavaFileObject.Kind getKind()
从接口 JavaFileObject 复制的描述
获取此文件对象的种类。

指定者:
接口 JavaFileObject 中的 getKind
返回:
this.kind

isNameCompatible

public boolean isNameCompatible(String simpleName,
                                JavaFileObject.Kind kind)
此实现对其 URI 路径和给定简单名称进行比较。如果给定种类等于此对象的种类,并且路径等于 simpleName + kind.extension 或者路径以 "/" + simpleName + kind.extension 结尾,则此方法返回 true。

此方法调用 getKind()toUri() 并且不直接访问 urikind 字段。

子类可以更改此行为,只要不违背 JavaFileObject 的协定。

指定者:
接口 JavaFileObject 中的 isNameCompatible
参数:
simpleName - 类的简单名称
kind - 种类
返回:
如果此文件对象兼容,则返回 true;否则返回 false

getNestingKind

public NestingKind getNestingKind()
此实现返回 null。子类可以更改此行为,只要不违背 JavaFileObject 的协定。

指定者:
接口 JavaFileObject 中的 getNestingKind
返回:
嵌套种类;如果嵌套种类未知,则返回 null

getAccessLevel

public Modifier getAccessLevel()
此实现返回 null。子类可以更改此行为,只要不违背 JavaFileObject 的协定。

指定者:
接口 JavaFileObject 中的 getAccessLevel
返回:
访问级别

toString

public String toString()
从类 Object 复制的描述
返回该对象的字符串表示。通常, toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。

Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:

getClass().getName() + '@' + Integer.toHexString(hashCode())
 

覆盖:
Object 中的 toString
返回:
该对象的字符串表示形式。