Mega Code Archive

 
Categories / Java Tutorial / Reflection
 

Is Type Compatible

// //$Id: IntrospectionUtil.java 1540 2007-01-19 12:24:10Z janb $ //Copyright 2006 Mort Bay Consulting Pty. Ltd. //------------------------------------------------------------------------ //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; import java.util.Arrays; import java.util.List; public class Utils {   public static boolean isTypeCompatible(Class formalType, Class actualType, boolean strict) {     if (formalType == null && actualType != null)       return false;     if (formalType != null && actualType == null)       return false;     if (formalType == null && actualType == null)       return true;     if (strict)       return formalType.equals(actualType);     else       return formalType.isAssignableFrom(actualType);   } }