load Class - Java Reflection

Java examples for Reflection:Class Loader

Description

load Class

Demo Code

/**// w w  w  .  j a  va 2s .  co  m
 *
 *Copyright (C) 2000-2003 Anthony Eden.
 *All rights reserved.
 *
 *Redistribution and use in source and binary forms, with or without
 *modification, are permitted provided that the following conditions
 *are met:
 *
 *1. Redistributions of source code must retain the above copyright
 *   notice, this list of conditions, and the following disclaimer.
 *
 *2. Redistributions in binary form must reproduce the above copyright
 *   notice, this list of conditions, and the disclaimer that follows
 *   these conditions in the documentation and/or other materials
 *   provided with the distribution.
 *
 *3. The name "EdenLib" must not be used to endorse or promote products
 *   derived from this software without prior written permission.  For
 *   written permission, please contact me@anthonyeden.com.
 *
 *4. Products derived from this software may not be called "EdenLib", nor
 *   may "EdenLib" appear in their name, without prior written permission
 *   from Anthony Eden (me@anthonyeden.com).
 *
 *In addition, I request (but do not require) that you include in the
 *end-user documentation provided with the redistribution and/or in the
 *software itself an acknowledgement equivalent to the following:
 *    "This product includes software developed by
 *     Anthony Eden (http://www.anthonyeden.com/)."
 *
 *THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
 *WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 *OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 *DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT,
 *INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 *(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 *SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 *HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 *STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
 *IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 *POSSIBILITY OF SUCH DAMAGE.
 *
 *For more information on EdenLib, please see <http://edenlib.sf.net/>.
 *
 */

public class Main{
    public static void main(String[] argv) throws Exception{
        String className = "java2s.com";
        System.out.println(loadClass(className));
    }
    public static Class loadClass(String className)
            throws ClassNotFoundException {
        ClassLoader cl = Thread.currentThread().getContextClassLoader();
        try {
            return cl.loadClass(className);
        } catch (ClassNotFoundException e) {
            System.err.println("ERROR: ClassNotFoundException for class ["
                    + className + "] using thread context class loader");
        } catch (SecurityException e) {
            System.err.println(className
                    + "ERROR: SecurityException for class [" + className
                    + "] using thread context class loader");
        }

        cl = ClassHelper.class.getClassLoader();
        return cl.loadClass(className);
    }
}

Related Tutorials