zoukankan      html  css  js  c++  java
  • Java中是否可以调用一个类中的main方法?

    前几天面试的时候,被问到在Java中是否可以调用一个类中的main方法?回来测试了下,答案是可以!代码如下:

    main1中调用main2的主方法

    package org.fiu.test;
    
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
    
    public class Main1 {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		System.out.println("main1");
    		ClassLoader classLoader = Main1.class.getClassLoader();
    		try {
    			Class<?> loadClass = classLoader.loadClass("org.fiu.test.Main2");
    			Method method = loadClass.getMethod("main", String[].class);
    			method.invoke(null, new Object[] { new String[] {} });
    		} catch (ClassNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (NoSuchMethodException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (SecurityException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (IllegalAccessException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (IllegalArgumentException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} catch (InvocationTargetException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    }
    

      main2类:

    package org.fiu.test;
    
    public class Main2 {
    
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		System.out.println("main2");
    	}
    
    }
    

      运行main1,打印如下:

    main1
    main2
    

      

  • 相关阅读:
    [考试反思]0904NOIP模拟测试37:守望
    游戏:最短路,拆点
    [考试反思]0903NOIP模拟测试36:复始
    [考试反思]0902NOIP模拟测试35:摆动
    长寿花:dp
    [考试反思]0901NOIP模拟测试34:游离
    赤壁情:dp
    [考试反思]0829NOIP模拟测试33:仰望
    [考试反思]0828NOIP模拟测试32:沉底
    宅男计划:单峰函数三分
  • 原文地址:https://www.cnblogs.com/weizhxa/p/6228562.html
Copyright © 2011-2022 走看看