java.lang.reflect.Method 類提供有關某個類別或接口上的一個方法的必要詳細信息,並提供對其的訪問。反射的方法也可以是類別方法或實例方法(包括抽象方法)。
此類允許在匹配實際參數以調用底層方法的形式參數時發生擴大轉換,但如果發生縮小轉換,則會拋出 IllegalArgumentException。
java.lang.Object
java.lang.reflect.AccessibleObject
java.lang.reflect.Executable
java.lang.reflect.Method
方法:
方法 | 說明 |
---|---|
等於(對象 obj) | 此方法將此方法與指定對象進行比較。 |
getAnnotatedReturnType() | 此方法返回一個 Annotated Type 對象,該對象表示使用類型來指定此可執行文件表示的方法/構造函數的返回類型。 |
getAnnotation(Class<T> annotationClass) | 如果存在指定類型的該元素的注釋,則此方法返回該元素的注釋,否則返回 null。 |
getDeclaredAnnotations() | 此方法返回直接出現在該元素上的注釋。 |
getDeclaringClass() | 此方法返回表示聲明此對象表示的可執行文件的類或接口的 Class 對象。 |
getDefaultValue() | 此方法返回此 Method 實例表示的注釋成員的默認值。 |
getExceptionTypes() | 此方法返回 Class 對象的數組,這些對象表示聲明為由該對象表示的底層可執行文件引發的異常類型。 |
getGenericExceptionTypes() | 此方法返回 Type 對象的數組,這些對象表示聲明為此可執行對象引發的異常。 |
getGenericParameterTypes() | 此方法返回一個 Type 對象數組,這些對象按聲明順序表示此對象所表示的可執行文件的形式參數類型。 |
getGenericReturnType() | 此方法返回一個 Type 對象,該對象表示此 Method 對象表示的方法的正式返回類型。 |
getModifiers() | 此方法返回此對象表示的可執行文件的 Java 語言修飾符。 |
getName() | 此方法以字符串形式返回此 Method 對象表示的方法的名稱。 |
getParameterAnnotations() | 此方法返回一個 Annotations 數組的數組,這些 Annotations 表示按聲明順序排列於此對象所表示的可執行文件的形式參數上的注釋。 |
getParameterCount() | 此方法返回此對象表示的可執行文件的形式參數的數量(無論是顯式聲明、隱式聲明還是兩者都沒有)。 |
getParameterTypes() | 此方法返回一個 Class 對象數組,這些對象按聲明順序表示該對象所表示的可執行文件的形式參數類型。 |
getDefaultValue()方法:
Java
// Java program to show the
// Implementation of getDefaultvalue()
import java.lang.reflect.Method;
public class getDefaultValueExample {
public static void main(String[] args)
{
Method[] methods = Demo.class.getMethods();
// calling method getDefaultValue()
System.out.println(methods[0].getDefaultValue());
}
}
class Demo {
private String str;
// member function returning string str
public String getSampleField() { return str; }
public void setSampleField(String str)
{
this.str = str;
}
}
輸出
null
toString()方法:
Java
// Java program to show the
// Implementation of toString()
import java.lang.reflect.Method;
public class MethodDemo {
public static void main(String[] args)
{
Method[] methods = SampleClass.class.getMethods();
// calling method toString()
System.out.println(methods[1].toString());
}
}
class SampleClass {
private String str;
public String getSampleField() { return str; }
public void setSampleField(String str)
{
this.str = str;
}
}
輸出
public void SampleClass.setSampleField(java.lang.String)
相關用法
- Java java.lang.reflect.Method.equals()用法及代碼示例
- Java java.lang.reflect.Method.getAnnotation()用法及代碼示例
- Java java.lang.reflect.Method.getDeclaredAnnotations()用法及代碼示例
- Java java.lang.reflect.Method.getDeclaringClass()用法及代碼示例
- Java java.lang.reflect.Method.getDefaultValue()用法及代碼示例
- Java java.lang.reflect.Method.getExceptionTypes()用法及代碼示例
- Java java.lang.reflect.Method.getGenericExceptionTypes()用法及代碼示例
- Java java.lang.reflect.Method.getGenericParameterTypes()用法及代碼示例
- Java java.lang.reflect.Method.getGenericReturnType()用法及代碼示例
- Java java.lang.reflect.Method.getModifiers()用法及代碼示例
- Java java.lang.reflect.Method.getName()用法及代碼示例
- Java java.lang.reflect.Method.getParameterAnnotations()用法及代碼示例
- Java java.lang.reflect.Method.getParameterTypes()用法及代碼示例
- Java java.lang.reflect.Method.getReturnType()用法及代碼示例
- Java java.lang.reflect.Method.hashCode()用法及代碼示例
- Java java.lang.reflect.Method.invoke()用法及代碼示例
- Java java.lang.reflect.Method.isBridge()用法及代碼示例
- Java java.lang.reflect.Method.isSynthetic()用法及代碼示例
- Java java.lang.reflect.Method.isVarArgs()用法及代碼示例
- Java java.lang.reflect.Method.toGenericString()用法及代碼示例
- Java java.lang.reflect.Method.toString()用法及代碼示例
- Java java.lang.reflect.Modifier.classModifiers()用法及代碼示例
- Java java.lang.reflect.Modifier.constructorModifiers()用法及代碼示例
- Java java.lang.reflect.Modifier.fieldModifiers()用法及代碼示例
- Java java.lang.reflect.Modifier.interfaceModifiers()用法及代碼示例
注:本文由純淨天空篩選整理自mayanktyagi1709大神的英文原創作品 java.lang.reflect.Method Class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。