method.html

来自「j2se5-api-zh,java文档的中文版本」· HTML 代码 · 共 882 行 · 第 1/4 页

HTML
882 行
字号
<p>如果基础方法是实例方法,则使用动态方法查找来调用它,这一点记录在 Java Language Specification, Second Edition 的第 15.12.4.4 节中;在发生基于目标对象的运行时类型的重写时更应该这样做。<p>如果基础方法是静态的,并且尚未初始化声明此方法的类,则会将其初始化。<p>如果方法正常完成,则将该方法返回的值返回给调用方;如果该值为基本类型,则首先适当地将其包装在对象中。但是,如果该值的类型为一组基本类型,则数组元素<i>不</i> 被包装在对象中;换句话说,将返回基本类型的数组。如果基础方法返回类型为 void,则该调用返回 null。<P><DD><DL></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>obj</CODE> - 从中调用基础方法的对象<DD><CODE>args</CODE> - 用于方法调用的参数<DT><B>返回:</B><DD>使用参数 <code>args</code> 在 <code>obj</code> 上指派该对象所表示方法的结果<DT><B>抛出:</B><DD><CODE><A HREF="../IllegalAccessException.html" title="java.lang 中的类">IllegalAccessException</A></CODE> - 如果此 <code>Method</code> 对象强制执行 Java 语言访问控制,并且基础方法是不可访问的。<DD><CODE><A HREF="../IllegalArgumentException.html" title="java.lang 中的类">IllegalArgumentException</A></CODE> - 如果该方法是实例方法,且指定对象参数不是声明基础方法的类或接口(或其中的子类或实现程序)的实例;如果实参和形参的数量不相同;如果基本参数的解包转换失败;或者如果在解包后,无法通过方法调用转换将参数值转换为相应的形参类型。<DD><CODE><A HREF="InvocationTargetException.html" title="java.lang.reflect 中的类">InvocationTargetException</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="isBridge()"><!-- --></A><H3>isBridge</H3><PRE>public boolean <B>isBridge</B>()</PRE><DL><DD>如果此方法是 bridge 方法,则返回 <tt>true</tt>;否则,返回 <tt>false</tt>。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>当且仅当此方法是由 Java Language Specification 定义的 bridge 方法时,才返回 true。<DT><B>从以下版本开始:</B></DT>  <DD>1.5</DD></DL></DD></DL><HR><A NAME="isVarArgs()"><!-- --></A><H3>isVarArgs</H3><PRE>public boolean <B>isVarArgs</B>()</PRE><DL><DD>如果将此方法声明为带有可变数量的参数,则返回 <tt>true</tt>;否则,返回 <tt>false</tt>。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>当且仅当将此方法声明为带有可变数量的参数时,才返回 <tt>true</tt>。<DT><B>从以下版本开始:</B></DT>  <DD>1.5</DD></DL></DD></DL><HR><A NAME="isSynthetic()"><!-- --></A><H3>isSynthetic</H3><PRE>public boolean <B>isSynthetic</B>()</PRE><DL><DD>如果此方法为复合方法,则返回 <tt>true</tt>;否则,返回 <tt>false</tt>。<P><DD><DL><DT><B>指定者:</B><DD>接口 <CODE><A HREF="Member.html" title="java.lang.reflect 中的接口">Member</A></CODE> 中的 <CODE><A HREF="Member.html#isSynthetic()">isSynthetic</A></CODE></DL></DD><DD><DL><DT><B>返回:</B><DD>当且仅当此方法是由 Java Language Specification 定义的复合方法时,才返回 true。<DT><B>从以下版本开始:</B></DT>  <DD>1.5</DD></DL></DD></DL><HR><A NAME="getAnnotation(java.lang.Class)"><!-- --></A><H3>getAnnotation</H3><PRE>public &lt;T extends <A HREF="../annotation/Annotation.html" title="java.lang.annotation 中的接口">Annotation</A>&gt; T <B>getAnnotation</B>(<A HREF="../Class.html" title="java.lang 中的类">Class</A>&lt;T&gt;&nbsp;annotationClass)</PRE><DL><DD><B>从接口 <CODE><A HREF="AnnotatedElement.html#getAnnotation(java.lang.Class)">AnnotatedElement</A></CODE> 复制的描述</B></DD><DD>如果存在该元素的指定类型的注释,则返回这些注释,否则返回 null。<P><DD><DL><DT><B>指定者:</B><DD>接口 <CODE><A HREF="AnnotatedElement.html" title="java.lang.reflect 中的接口">AnnotatedElement</A></CODE> 中的 <CODE><A HREF="AnnotatedElement.html#getAnnotation(java.lang.Class)">getAnnotation</A></CODE><DT><B>覆盖:</B><DD>类 <CODE><A HREF="AccessibleObject.html" title="java.lang.reflect 中的类">AccessibleObject</A></CODE> 中的 <CODE><A HREF="AccessibleObject.html#getAnnotation(java.lang.Class)">getAnnotation</A></CODE></DL></DD><DD><DL><DT><B>参数:</B><DD><CODE>annotationClass</CODE> - 对应于注释类型的 Class 对象<DT><B>返回:</B><DD>如果该元素的指定注释类型的注释存在于此对象上,则返回这些注释,否则返回 null</DL></DD></DL><HR><A NAME="getDeclaredAnnotations()"><!-- --></A><H3>getDeclaredAnnotations</H3><PRE>public <A HREF="../annotation/Annotation.html" title="java.lang.annotation 中的接口">Annotation</A>[] <B>getDeclaredAnnotations</B>()</PRE><DL><DD><B>从接口 <CODE><A HREF="AnnotatedElement.html#getDeclaredAnnotations()">AnnotatedElement</A></CODE> 复制的描述</B></DD><DD>返回直接存在于此元素上的所有注释。与此接口中的其他方法不同,该方法将忽略继承的注释。(如果没有注释直接存在于此元素上,则返回长度为零的一个数组。)该方法的调用方可以随意修改返回的数组;这不会对其他调用方返回的数组产生任何影响。<P><DD><DL><DT><B>指定者:</B><DD>接口 <CODE><A HREF="AnnotatedElement.html" title="java.lang.reflect 中的接口">AnnotatedElement</A></CODE> 中的 <CODE><A HREF="AnnotatedElement.html#getDeclaredAnnotations()">getDeclaredAnnotations</A></CODE><DT><B>覆盖:</B><DD>类 <CODE><A HREF="AccessibleObject.html" title="java.lang.reflect 中的类">AccessibleObject</A></CODE> 中的 <CODE><A HREF="AccessibleObject.html#getDeclaredAnnotations()">getDeclaredAnnotations</A></CODE></DL></DD><DD><DL><DT><B>返回:</B><DD>直接存在于此元素上的所有注释</DL></DD></DL><HR><A NAME="getDefaultValue()"><!-- --></A><H3>getDefaultValue</H3><PRE>public <A HREF="../Object.html" title="java.lang 中的类">Object</A> <B>getDefaultValue</B>()</PRE><DL><DD>返回由此 <tt>Method</tt> 实例表示的注释成员的默认值。如果该成员为基本类型,则返回相应包装器类型的实例。如果不存在与该成员关联的默认值或者该成员实例不表示注释类型的声明成员,则返回 null。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>由此 <tt>Method</tt> 实例表示的注释成员的默认值。<DT><B>抛出:</B><DD><CODE><A HREF="../TypeNotPresentException.html" title="java.lang 中的类">TypeNotPresentException</A></CODE> - 如果注释类型是 <A HREF="../Class.html" title="java.lang 中的类"><CODE>Class</CODE></A> 且找不到默认类值的定义。<DT><B>从以下版本开始:</B></DT>  <DD>1.5</DD></DL></DD></DL><HR><A NAME="getParameterAnnotations()"><!-- --></A><H3>getParameterAnnotations</H3><PRE>public <A HREF="../annotation/Annotation.html" title="java.lang.annotation 中的接口">Annotation</A>[][] <B>getParameterAnnotations</B>()</PRE><DL><DD>返回表示按照声明顺序对此 <tt>Method</tt> 对象所表示方法的形参进行注释的那个数组的数组。(如果基础方法没有参数,则返回长度为零的数组。如果该方法有一个或多个参数,则为每个不带注释的参数返回长度为零的嵌套数组。)返回数组中包含的注释对象是可序列化的。此方法的调用方可以随意修改返回的数组;这不会对其他调用方返回的数组产生任何影响。<P><DD><DL></DL></DD><DD><DL><DT><B>返回:</B><DD>表示按声明顺序对此 Method 对象所表示方法的形参进行注释的那个数组的数组<DT><B>从以下版本开始:</B></DT>  <DD>1.5</DD></DL></DD></DL><!-- ========= END OF CLASS DATA ========= --><HR><!-- ======= START OF BOTTOM NAVBAR ====== --><A NAME="navbar_bottom"><!-- --></A><A HREF="#skip-navbar_bottom" title="跳过导航链接"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_bottom_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">  <TR ALIGN="center" VALIGN="top">  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>概述</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>软件包</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>类</B></FONT>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Method.html"><FONT CLASS="NavBarFont1"><B>使用</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>树</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>已过时</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>索引</B></FONT></A>&nbsp;</TD>  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>帮助</B></FONT></A>&nbsp;</TD>  </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM><b>Java<sup><font size=-2>TM</font></sup>&nbsp;2&nbsp;Platform<br>Standard&nbsp;Ed. 5.0</b></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">&nbsp;<A HREF="Member.html" title="java.lang.reflect 中的接口"><B>上一个类</B></A>&nbsp;&nbsp;<A HREF="Modifier.html" title="java.lang.reflect 中的类"><B>下一个类</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">  <A HREF="../../../index.html@java_2Flang_2Freflect_2FMethod.html" target="_top"><B>框架</B></A>  &nbsp;&nbsp;<A HREF="Method.html" target="_top"><B>无框架</B></A>  &nbsp;&nbsp;<SCRIPT type="text/javascript">  <!--  if(window==top) {    document.writeln('<A HREF="../../../allclasses-noframe.html"><B>所有类</B></A>');  }  //--></SCRIPT><NOSCRIPT>  <A HREF="../../../allclasses-noframe.html"><B>所有类</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">  摘要:&nbsp;嵌套&nbsp;|&nbsp;字段&nbsp;|&nbsp;构造方法&nbsp;|&nbsp;<A HREF="#method_summary">方法</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">详细信息:&nbsp;字段&nbsp;|&nbsp;构造方法&nbsp;|&nbsp;<A HREF="#method_detail">方法</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_bottom"></A><!-- ======== END OF BOTTOM NAVBAR ======= --><HR><font size="-1"><a href="../../../../../../../../../java.sun.com/cgi-bin/bugreport.cgi">提交错误或意见</a><br>有关更多的 API 参考资料和开发人员文档,请参阅 <a href="../../../../../../../../../java.sun.com/j2se/1.5.0/docs/relnotes/devdocs-vs-specs.html">Java 2 SDK SE 开发人员文档</a>。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。 <p>版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守<a href="../../../../../../../../../java.sun.com/j2se/1.5.0/docs/relnotes/license.html">许可证条款</a>。另请参阅<a href="../../../../../../../../../java.sun.com/docs/redist.html">文档重新分发政策</a>。</font></BODY></HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?