docs/technotes/guides/jni/spec/functions.html
Print this page
@@ -1883,11 +1883,11 @@
*env, jclass clazz,<br />
const char *name, const char *sig);</code></p>
<p>Returns the method ID for an instance (nonstatic)
method of a class or interface. The method may be defined in one of
-the <code>clazz</code>’s superclasses and
+the <code>clazz</code>’s supertypes and
inherited by <code>clazz</code>. The method is
determined by its name and signature.</p>
<p><code>GetMethodID()</code> causes an
uninitialized class to be initialized.</p>
@@ -2405,16 +2405,18 @@
<p>The <em class=
"cEmphasis">CallNonvirtual<type>Method</em> families of
routines and the <em>Call<type>Method</em>
families of routines are different. <em class=
"cEmphasis">Call<type>Method</em> routines invoke the method
-based on the class of the object, while <em class=
+based on the class or interface of the object, while <em class=
"cEmphasis">CallNonvirtual<type>Method</em> routines invoke
the method based on the class, designated by the <code class=
"cCode">clazz</code> parameter, from which the method ID is
obtained. The method ID must be obtained from the real class of the
-object or from one of its superclasses.</p>
+object or from one of its supertypes.</p>
+
+<p><em class="cEmphasis">CallNonvirtual<type>Method</em> routines are the mechanism for invoking <em>"default interface methods"</em> introduced in Java 8.</p>
<h4>CallNonvirtual<type>Method
Routines</h4>
<p>Programmers place all arguments that are to be