當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Class getDeclaredMethod()用法及代碼示例


java.lang.Class類的getDeclaredMethod()方法用於獲取具有指定參數類型的此類的指定方法。該方法以Method對象的形式返回此類的指定方法。

用法:

public Method getDeclaredMethod(String methodName, 
                            Class[] parameterType)
       throws NoSuchMethodException, SecurityException

參數:此方法接受兩個參數:


  • methodName這是要獲得的方法。
  • parameterType這是指定方法的參數類型的數組。

返回值:此方法以Method對象的形式返回此類的指定方法。

異常該方法拋出:

  • NoSuchMethodException如果找不到具有指定名稱的方法。
  • NullPointerException 如果名稱為null
  • SecurityException如果存在安全管理員並且不滿足安全條件。

    下麵的程序演示了getDeclaredMethod()方法。

    示例1:

    // Java program to demonstrate 
    // getDeclaredMethod() method 
      
    import java.util.*; 
      
    public class Test { 
      
        public void func() {} 
      
        public static void main(String[] args) 
            throws ClassNotFoundException, NoSuchMethodException 
        { 
      
            // returns the Class object for this class 
            Class myClass = Class.forName("Test"); 
      
            System.out.println("Class represented by myClass: "
                               + myClass.toString()); 
      
            String methodName = "func"; 
            Class[] parameterType = null; 
      
            // Get the method of myClass 
            // using getDeclaredMethod() method 
            System.out.println( 
                methodName + " Method of myClass: "
                + myClass.getDeclaredMethod( 
                      methodName, parameterType)); 
        } 
    }
    輸出:
    Class represented by myClass: class Test
    func Method of myClass: public void Test.func()
    

    示例2:

    // Java program to demonstrate 
    // getDeclaredMethod() method 
      
    import java.util.*; 
      
    class Main { 
      
        private void func() {} 
      
        public static void main(String[] args) 
            throws ClassNotFoundException, NoSuchMethodException 
        { 
            // returns the Class object for this class 
            Class myClass = Class.forName("Main"); 
      
            System.out.println("Class represented by myClass: "
                               + myClass.toString()); 
      
            String methodName = "func"; 
            Class[] parameterType = null; 
      
            try { 
                // Get the method of myClass 
                // using getDeclaredMethod() method 
                System.out.println( 
                    methodName + " Method of myClass: "
                    + myClass.getDeclaredMethod( 
                          methodName, parameterType)); 
            } 
            catch (Exception e) { 
                System.out.println(e); 
            } 
        } 
    }
    輸出:
    Class represented by myClass: class Main
    func Method of myClass: private void Main.func()
    

    參考: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getDeclaredMethod-java.lang.String-java.lang.Class…-



相關用法


注:本文由純淨天空篩選整理自srinam大神的英文原創作品 Class getDeclaredMethod() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。