Here you can find the source of getMethod(Class
Parameter | Description |
---|---|
clazz | Class |
methodName | String |
parameterTypes | Class[] |
Parameter | Description |
---|---|
SecurityException | an exception |
NoSuchMethodException | an exception |
private static <T, Y> Method getMethod(Class<T> clazz, String methodName, Class<Y>[] parameterTypes) throws SecurityException, NoSuchMethodException
//package com.java2s; /* Copyright 2010 Google Inc. * // w w w . j a v a 2 s . c om * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License */ import java.lang.reflect.Method; public class Main { /** * This method return the list of method of any class. * * @param clazz Class * @param methodName String * @param parameterTypes Class[] * @return Method * @throws SecurityException * @throws NoSuchMethodException */ private static <T, Y> Method getMethod(Class<T> clazz, String methodName, Class<Y>[] parameterTypes) throws SecurityException, NoSuchMethodException { Method method = null; try { method = clazz.getMethod(methodName, parameterTypes); } catch (NoSuchMethodException e) { if (methodName.startsWith("get")) { methodName = methodName.replaceFirst("get", "is"); } else if (methodName.startsWith("is")) { methodName = methodName.replaceFirst("get", "is"); } method = clazz.getMethod(methodName, parameterTypes); } return method; } }