Android examples for java.lang.reflect:New Instance
Given a List of class names, this method converts them into classes. A new List is returned.
/*/*from ww w . j av a 2s . c o m*/ * Original work Copyright (c) 2005-2008, The Android Open Source Project * Modified work Copyright (c) 2013, rovo89 and Tungstwenty * Modified work Copyright (c) 2015, Alibaba Mobile Infrastructure (Android) Team * * 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. */ //package com.java2s; import java.util.ArrayList; import java.util.List; public class Main { /** * <p>Given a {@code List} of class names, this method converts them into classes.</p> * * <p>A new {@code List} is returned. If the class name cannot be found, {@code null} * is stored in the {@code List}. If the class name in the {@code List} is * {@code null}, {@code null} is stored in the output {@code List}.</p> * * @param classNames the classNames to change * @return a {@code List} of Class objects corresponding to the class names, * {@code null} if null input * @throws ClassCastException if classNames contains a non String entry */ public static List<Class<?>> convertClassNamesToClasses( List<String> classNames) { if (classNames == null) { return null; } List<Class<?>> classes = new ArrayList<Class<?>>(classNames.size()); for (String className : classNames) { try { classes.add(Class.forName(className)); } catch (Exception ex) { classes.add(null); } } return classes; } }