首页
学习
活动
专区
圈层
工具
发布

反射类的main方法

有时候我们需要调用一个类的Main方法,也可说是执行这个类的代码。...但是这时候这个类我们还没有写好,或者这个类是通过网络运行时传给我们的,我们就不可能在程序中知道我们将要运行的类的名字,这时候我们可以利用java的反射机制去调用main方法,只要在我们执行的时候,将我们需要执行的类的名字传递进去就可以了...这个方法在进行网络编程的时候,有时候我们需要接收一个类,我们只有等到接收到了才知道类的名字叫什么,显然现在在写程序不实际,我们就可以利用反射的方法。...(String[] args) throws Exception { //这个是我们知道类的名字情况下的调用方式 Test1.main(new String...就可以正确执行了 mainMethod.invoke(null, new Object[]{new String[]{"abc","efg"}}); //还可以使用下面的方法

1.3K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Shell-通过shell启动Java类中的main方法 + 通过Shell启动jar包

    文章目录 概述 shell启动Java类中的main方法 启动脚本分析 启动脚本 shell启动jar包 概述 Java程序 运行在linux主机上, 通过shell脚本启动为进程。...shell启动Java类中的main方法 启动脚本分析 根据服务器上JDK 以及工程部署路径 ?...修改相应的#JDK所在路径 APP_HOME 启动入口类APP_MAINCLASS(需有main方法) 。注意CLASSPATH,务必正确export相应的jar包。...的上一级目录) APP_HOME=/home/xxx/HbaseMonitor #需要启动的Java主程序(main方法类) APP_MAINCLASS=com.xxxxx.monitor.hbase.HbaseMonitor...Java主程序(main方法类) APP_MAINCLASS=com.tudaxia.test.TestMain #拼凑完整的classpath参数,包括指定lib目录下所有的jar CLASSPATH

    1.8K60

    SpringBoot:为什么main方法启动类SpringApplication需要在项目根目录

    ://blog.csdn.net/u010013573/java/article/details/86685984 一、概述 使用SpringBoot的应用是需要将应用代码编译打包成jar包,然后基于main...方法的方式来独立启动这个应用,使得该应用作为一个独立进程运行。...而在应用当中,这个包含main方法的启动类需要放在项目的根目录,与所有包平级,一般在main方法内部通过执行SpringApplication.run方法来启动应用。...启动类自身是一个基于注解的配置类,一般使用@SpringBootApplication注解,而这个注解由三个注解组成,分别是:@SpringBootConfiguration,@ComonentScan...,所以将使用了@SpringBootApplication注解的包含main方法的启动类放在项目根目录,则会扫描项目的所有包。

    3.9K30

    main主函数(主方法)里头的参数String[] args有啥作用?

    文章目录 前言 一、作用 二、在控制台传入参数 三、在IntelliJ IDEA中传入参数 总结 ---- 前言 很多老铁不清楚JAVA主方法中main()里面的的参数是什么意思,以及有什么作用,接下来给大家用最通俗易懂的话来讲解...---- 一、作用 主方法就是程序的入口,那么里面的String[] args参数是什么意思呢?...String[]表示的是字符串类型的数组,args表示的是传入的参数名,所以整体的意思就是主方法main(String[] args)可以接收一个字符串类型的数组,数组名字为args。...或者可以(都一样,两种打开途径) 然后找到一个程序实参的框框 输入你想传递的参数,例如:liu teacher 点击确定,编译并运行 总结 本文简单介绍了在JAVA主方法中args...的作用和输入方法,纯手打,希望老铁们多多支持(●ˇ∀ˇ●)

    2.7K30

    SpringBoot学习篇|主启动类的运行

    SpringBoot学习篇|主启动类的运行 package com.example.demo; import org.springframework.boot.SpringApplication; import...org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Demo3Application { public static void main...,加载所有可用初始化器 通过getSpringFactoriesIns根据传入的类名得到所需工厂集合实例,设置所有可用程序监听器 推断并设置main方法定义类(执行Run函数的类,也就是参数类) 根据传入的类名得到所需工厂集合实例流程...: 通过加载器获取spring.factories文件 获取文件中工厂类全路径 通过工厂类反射,得到工厂类的class对象,执行构造方法 生成工厂类实例并返回 执行实例化对象的run方法 启动实例计时器和开启应用监听器的监听功能...,进行headless系统属性设置 通过factoriesInstances根据传入的类名得到所需工厂集合实例,初始化监听器 启动已准备好的监听器 装配环境参数 创建配置环境 加载属性资源

    33860

    为啥一个 main 方法就能启动项目

    而使用 Spring Boot 我们只需要像运行普通 JavaSE 程序一样,run 一下 main() 方法就可以启动一个 Web 应用了。这是怎么做到的呢?...而我们知道注解相当于是一种配置,那么这个 run() 方法必然就是 Spring Boot 的启动入口了。接下来,我们沿着 run() 方法来顺藤摸瓜。...通过方法名很容易看出来,就是根据 classpath 中的类来推断当前的应用类型。我们这里是一个普通的 Web 应用,所以最终返回的类型为 SERVLET。...加载资源上面的代码中,又调用了一个很关键的方法——load()。这个 load() 方法真正的作用是去调用 BeanDefinitionLoader 类的 load() 方法。...刷新上下文run() 方法编号10 的 refreshContext() 方法是整个启动过程比较核心的地方。

    39210

    为啥一个 main 方法就能启动项目

    而使用 Spring Boot 我们只需要像运行普通 JavaSE 程序一样,run 一下 main() 方法就可以启动一个 Web 应用了。这是怎么做到的呢?...而我们知道注解相当于是一种配置,那么这个 run() 方法必然就是 Spring Boot 的启动入口了。 接下来,我们沿着 run() 方法来顺藤摸瓜。...通过方法名很容易看出来,就是根据 classpath 中的类来推断当前的应用类型。 我们这里是一个普通的 Web 应用,所以最终返回的类型为 SERVLET。...加载资源 上面的代码中,又调用了一个很关键的方法——load()。这个 load() 方法真正的作用是去调用 BeanDefinitionLoader 类的 load() 方法。...刷新上下文 run() 方法编号10 的 refreshContext() 方法是整个启动过程比较核心的地方。

    40230

    Java之面向对象概述,类,构造方法,static,主方法,对象

    } public static void main(String[] args) { //不需要通过 new 实例化,直接通过 类名 ....有运行结果我们可以得出: 1.静态代码块在非静态代码块之前运行 2.构造方法在new的时候运行 3.成员方法在调用的时候运行,不调用不运行 4.运行的优先顺序如上图所示 五、类的主方法  main 方法...主方法是类的入口点,他定义了程序从何处开始:主方法提供对程序流向的控制,Java编译器通过主方法来执行程序。...注意: 主方法是静态的,所以要直接在主方法中调用其他方法德华该方法必须也是静态的。 主方法没有返回值。 主方法的形参是数组。...由于垃圾回收不受人为控制,具体执行时间也不确定,所以finalize() 方法也就无法执行,为此,Java提供了System.gc()方法强制启动垃圾回收器。

    1.3K50

    父类的main方法可以被继承么?有什么特殊?

    问题 main方法能重载么? main方法能被其他方法调用么? main方法可以继承么?...main方法的特殊 首先针对 main 方法的格式定义: public :main 方法是启动的时候由 JVM 进行加载的,public 的可访问权限是最高的,所以需要声明为 public; static...:方法的调用要么是通过对象,要么是通过类,而 main 方法的话因为是由虚拟机调用的,所以无需生成对象,那么声明为 static 即可; main :至于为什么方法名称叫 main,我想应该是参考的是...当类继承时,子类可以继承父类的方法和变量,那么当父类定义了 main 方法,而子类没有 main 方法时,能继承父类的 main 方法,从而正常的运行程序么?...那么还有一种隐藏的情况也很显然了,子类定义自己的 main 方法,隐藏掉父类中的实现,那么这也是可以的。 总结 除了main方法作为应用程序的入口比较特殊外,其他情况下与正常的静态方法是没什么区别的。

    1.4K20

    java学习之路:14.类的构造方法,静态变量,常量和方法,类的主方法

    1.类的构造方法 类中除了成员方法,还有一种特殊的方法,那就是构造的方法。构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的,每当类实例化一个对象时,类都会自动调用构造方法。...如果在类中定义的构造方法都不是无参的构造方法,那么编译器也不会为类设置一个默认的无参构造方法,当试图调用无参构造方法实例化一个对象时,编译器会报错,所有只有在类中没有定义任何构造方法时,编译器才会在该类中自动创建一个不带参数的构造方法...并且this也可以调用类中的构造方法。...3.类的主方法 public static void main(String[] args ) { } 主方法是类的入口点,它定义了程序从何处开始,主方法提供对程序流程的控制,java编译器通过主方法来执行程序...主方法是静态的,所以在主方法中调用其他方法,被调用方法也必须是静态的。 主方法没有参数。 主方法的形参为数组。

    1.2K41
    领券