Java Class New Instance newInstance(final String fullyQualifiedClass)

Here you can find the source of newInstance(final String fullyQualifiedClass)

Description

Leads to OSGi classpath problems.

License

Apache License

Parameter

Parameter Description
T a parameter
fullyQualifiedClass a parameter

Declaration

public static <T> T newInstance(final String fullyQualifiedClass) 

Method Source Code

//package com.java2s;
/**/*from  ww  w  .j av a 2  s.com*/
 * Copyright (C) [2013] [The FURTHeR Project]
 *
 * 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.
 */

public class Main {
    /**
     * Leads to OSGi classpath problems.
     *
     * @param <T>
     * @param fullyQualifiedClass
     * @return
     */
    public static <T> T newInstance(final String fullyQualifiedClass) {
        try {
            return (T) Thread.currentThread().getContextClassLoader().loadClass(fullyQualifiedClass).newInstance();
        } catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
            throw new RuntimeException(e);
        }
    }

    /**
     * Loads the given class using the context class loader
     * 
     * @return
     */
    public static Class<?> loadClass(final String clazz) {
        Class<?> clazzObject;
        try {
            clazzObject = Thread.currentThread().getContextClassLoader().loadClass(clazz);
        } catch (final ClassNotFoundException e) {
            throw new RuntimeException("Unable to load " + clazz, e);
        }
        return clazzObject;
    }
}

Related

  1. newInstance(final Class type, final int length)
  2. newInstance(final ClassLoader classLoader, final String className, final Object... constructorArgs)
  3. newInstance(final Object obj, final String clazz)
  4. newInstance(final String className, ClassLoader cl)
  5. newInstance(final String className, final Object[] args)
  6. newInstance(Map> providerMap, String provider, Class[] paramsClass, Object[] paramValues)
  7. newInstance(Object bean, String propertyName, Class clazz)
  8. newInstance(ProceedingJoinPoint thisJoinPoint, Class clazz, Object... newArgs)
  9. newInstance(String aclass)