field.html
来自「j2se5-api-zh,java文档的中文版本」· HTML 代码 · 共 1,108 行 · 第 1/5 页
HTML
1,108 行
set</H3><PRE>public void <B>set</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, <A HREF="../Object.html" title="java.lang 中的类">Object</A> value) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将指定对象变量上此 <code>Field</code> 对象表示的字段设置为指定的新值。如果基础字段的类型为基本类型,则对新值进行自动解包。<p>进行此操作的方式如下:<p>如果基础字段是静态字段,则忽略 <code>obj</code> 变量;它可能为 null。<p>否则基础字段是一个实例字段。如果指定对象变量为 null,则该方法将抛出一个 <code>NullPointerException</code>。如果指定对象变量不是声明基础字段的类或接口的实例,则该方法将抛出一个 <code>IllegalArgumentException</code>。<p>如果此 <code>Field</code> 对象实施 Java 语言访问控制,并且基础字段是不可访问的,则该方法将抛出一个 <code>IllegalAccessException</code>。<p>如果基础字段为 final 字段,则该方法将抛出一个 <code>IllegalAccessException</code>,除非 <code>setAccessible(true)</code> 已经继承该字段并且该字段是一个非静态字段。在通过程序的其他部分可以访问类的实例之前,只有使用空白 final 字段反序列化或重构类的实例期间,以这种方式设置 final 字段才有意义。在其他任何上下文中使用该方法都可能会有不可预知的结果,包括程序的其他部分继续使用该字段的原始值的情况。<p>如果基础字段的类型为某一基本类型,则可以尝试使用解包转换将新值转换为基本类型的值。如果该尝试失败,则此方法将抛出一个 <code>IllegalArgumentException</code>。<p>如果在进行可能的解包之后,无法通过某一标识或扩展转换将新值转换为基础字段的类型,则此方法将抛出一个 <code>IllegalArgumentException</code>。<p>如果基础字段是静态的,并且声明该字段的类尚未初始化,则初始化这个类。<p>字段被设置为可能已解包并扩大的新值。<p>如果字段隐藏在 <code>obj</code> 的类型中,则根据前面的规则设置字段的值。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>value</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。</DL></DD></DL><HR><A NAME="setBoolean(java.lang.Object, boolean)"><!-- --></A><H3>setBoolean</H3><PRE>public void <B>setBoolean</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, boolean z) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>boolean</code> 值。该方法等同于 <code>set(obj, zObj)</code>,其中 <code>zObj</code> 是一个 <code>Boolean</code> 对象,并且 <code>zObj.booleanValue() == z</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>z</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setByte(java.lang.Object, byte)"><!-- --></A><H3>setByte</H3><PRE>public void <B>setByte</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, byte b) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>byte</code> 值。该方法等同于 <code>set(obj, bObj)</code>,其中 <code>bObj</code> 是一个 <code>Byte</code> 对象,并且 <code>bObj.byteValue() == b</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>b</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setChar(java.lang.Object, char)"><!-- --></A><H3>setChar</H3><PRE>public void <B>setChar</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, char c) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>char</code> 值。该方法等同于 <code>set(obj, cObj)</code>,其中 <code>cObj</code> 是一个 <code>Character</code> 对象,并且 <code>cObj.charValue() == c</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>c</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setShort(java.lang.Object, short)"><!-- --></A><H3>setShort</H3><PRE>public void <B>setShort</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, short s) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>short</code> 值。该方法等同于 <code>set(obj, sObj)</code>,其中 <code>sObj</code> 是一个 <code>Short</code> 对象,并且 <code>sObj.shortValue() == s</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>s</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setInt(java.lang.Object, int)"><!-- --></A><H3>setInt</H3><PRE>public void <B>setInt</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, int i) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>int</code> 值。该方法等同于 <code>set(obj, iObj)</code>,其中 <code>iObj</code> 是一个 <code>Integer</code> 对象,并且 <code>iObj.intValue() == i</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>i</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setLong(java.lang.Object, long)"><!-- --></A><H3>setLong</H3><PRE>public void <B>setLong</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, long l) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>long</code> 值。该方法等同于 <code>set(obj, lObj)</code>,其中 <code>lObj</code> 是一个 <code>Long</code> 对象,并且 <code>lObj.longValue() == l</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>l</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setFloat(java.lang.Object, float)"><!-- --></A><H3>setFloat</H3><PRE>public void <B>setFloat</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, float f) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>float</code> 值。该方法等同于 <code>set(obj, fObj)</code>,其中 <code>fObj</code> 是一个 <code>Float</code> 对象,并且 <code>fObj.floatValue() == f</code>。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 应该修改其字段的对象<DD><CODE>f</CODE> - 正被修改的 <code>obj</code> 的字段的新值<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果基础字段是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果指定对象不是声明基础字段(或者其子类或实现者)的类或接口的实例,或者如果解包转换失败。<DD><CODE><A HREF="../NullPointerException.html" title="java.lang 中的类">NullPointerException</A></CODE> - 如果指定对象为 null 并且字段是一个实例字段。<DD><CODE><A HREF="../ExceptionInInitializerError.html" title="java.lang 中的类">ExceptionInInitializerError</A></CODE> - 如果此方法引起的初始化失败。<DT><B>另请参见:</B><DD><A HREF="Field.html#set(java.lang.Object, java.lang.Object)"><CODE>set(java.lang.Object, java.lang.Object)</CODE></A></DL></DD></DL><HR><A NAME="setDouble(java.lang.Object, double)"><!-- --></A><H3>setDouble</H3><PRE>public void <B>setDouble</B>(<A HREF="../Object.html" title="java.lang 中的类">Object</A> obj, double d) throws <A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A>, <A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></PRE><DL><DD>将字段的值设置为指定对象上的一个 <code>double</code> 值。该方法等同于 <code>set(obj, dObj)</code>,其中 <code>dObj</code> 是一
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?