El método Type.GetMethods() se utiliza para obtener los métodos del tipo actual. Hay 2 métodos en la lista de sobrecarga de este método de la siguiente manera:
- Método GetMethods(BindingFlags)
- Método GetMethods()
Método GetMethods(BindingFlags)
Este método se usa para buscar los métodos definidos para el Tipo actual, usando las restricciones de enlace especificadas cuando se anula en una clase derivada.
Sintaxis: public abstract System.Reflection.MethodInfo[] GetMethods (System.Reflection.BindingFlags bindingAttr);
Aquí, se necesita una máscara de bits compuesta por uno o más BindingFlags que especifican cómo se realiza la búsqueda o,
Cero (predeterminado), para devolver una array vacía.Valor devuelto: este método devuelve una array de objetos MethodInfo que representan todos los métodos definidos para el tipo actual que coinciden con las restricciones de enlace especificadas o una array vacía de tipo MethodInfo, si no hay métodos definidos para el tipo actual, o si ninguno de los métodos definidos coincidir con las restricciones vinculantes.
Los siguientes programas ilustran el uso del método Type.GetMethods(BindingFlags) :
Ejemplo 1:
// C# program to demonstrate the // Type.GetMethods() Method using System; using System.Globalization; using System.Reflection; // Defining class Empty public class Empty { } class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Empty); // try-catch block for handling Exception try { // Getting array of Method by // using GetMethods() Method MethodInfo[] info = objType.GetMethods(BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Methods of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.Write("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } }
Methods of current type is as Follow: Boolean Equals(System.Object) Int32 GetHashCode() System.Type GetType() System.String ToString()
Ejemplo 2:
// C# program to demonstrate the // Type.GetMethods() Method using System; using System.Globalization; using System.Reflection; class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(int); // try-catch block for handling Exception try { // Getting array of Method by // using GetMethods() Method MethodInfo[] info = objType.GetMethods(BindingFlags.Public | BindingFlags.Static); // Display the Result Console.WriteLine("Methods of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.Write("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } }
Methods of current type is as Follow: Int32 Parse(System.String) Int32 Parse(System.String, System.Globalization.NumberStyles) Int32 Parse(System.String, System.IFormatProvider) Int32 Parse(System.String, System.Globalization.NumberStyles, System.IFormatProvider) Boolean TryParse(System.String, Int32 ByRef) Boolean TryParse(System.String, System.Globalization.NumberStyles, System.IFormatProvider, Int32 ByRef)
Método GetMethods()
Este método se utiliza para devolver todos los métodos públicos del Tipo actual.
Sintaxis: public System.Reflection.MethodInfo[] GetMethods();
Valor de retorno: este método devuelve una array de objetos MethodInfo que representan todos los métodos públicos definidos para el tipo actual o una array vacía de tipo MethodInfo si no se definen métodos públicos para el tipo actual.
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# program to demonstrate the // Type.GetMethods() Method using System; using System.Globalization; using System.Reflection; // Defining class Empty class Empty { } class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Empty); // try-catch block for handling Exception try { // Getting array of Method by // using GetMethods() Method MethodInfo[] info = objType.GetMethods(); // Display the Result Console.WriteLine("Methods of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.Write("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } }
Methods of current type is as Follow: Boolean Equals(System.Object) Int32 GetHashCode() System.Type GetType() System.String ToString()
Ejemplo 2:
// C# program to demonstrate the // Type.GetMethods() Method using System; using System.Globalization; using System.Reflection; // Defining class Student public class Student { private string name, dept; private int roll; // Constructor public Student(string name, int roll, string dept) { this.name = name; this.roll = roll; this.dept = dept; } // getter for name public string getName() { return name; } // getter for roll public int getRoll() { return roll; } // getter for dept public string getDept() { return dept; } } class GFG { // Main Method public static void Main() { // Declaring and initializing object of Type Type objType = typeof(Student); // try-catch block for handling Exception try { // Getting array of Method by // using GetMethods() Method MethodInfo[] info = objType.GetMethods(BindingFlags.Public | BindingFlags.Instance); // Display the Result Console.WriteLine("Methods of current type is as Follow: "); for (int i = 0; i < info.Length; i++) Console.WriteLine(" {0}", info[i]); } // catch ArgumentNullException here catch (ArgumentNullException e) { Console.Write("name is null."); Console.Write("Exception Thrown: "); Console.Write("{0}", e.GetType(), e.Message); } } }
Methods of current type is as Follow: System.String getName() Int32 getRoll() System.String getDept() Boolean Equals(System.Object) Int32 GetHashCode() System.Type GetType() System.String ToString()
Referencia:
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA