全面解析Java main方法

 更新时间:2018年05月08日 08:33:27   作者:奇客艺术  
main方法是我们学习Java语言学习的第一个方法,也是每个java使用者最熟悉的方法,每个Java应用程序都必须有且仅有一个main方法。这篇文章通过实例代码给大家介绍java main方法的相关知识,感兴趣的朋友跟随脚本之家小编一起学习吧

1、main方法的重载

package cn.nxl;
 public class Main_test {
  public static void main(String args[]) {
   System.out.println("应用程序入口的main方法");
   main();
   main();
   main(, );
  }
  public static void main(){
   System.out.println("无参的main方法");
  }
  public static void main(int i){
   System.out.println("有参的重载main方法");
  }
  public static void main(int i,int j){
   System.out.println("有两个参数的重载main方法");
  }
 }

以上实例说明main方法是可以重载的,每个main方法的参数都是不同的,程序是可以运行的,可以输出应有的结果。但是,如果没有程序入口的main方法,只含有其他main方法。虽然编译此程序是可以的通过的,但是运行时会产生错误。这是因为程序运行时,Java虚拟机找不到对应的main方法,就会产生运行错误。

2、main方法的调用

 public class Main_test {          
  public static void main(String[] args) {
   main(args);
  }
  public static void main(String[] args){
   main(args);
  }
 }

运行程序后,程序无限递归执行两main方法,很明显main方法是可以被调用的。

 

3、main方法的继承

Main.java:
 public class Main{
  public static void main(String[] args) {
   System.out.println("Hello Word!");
  }
 }
Main_test.java:
 public class Main_test extends Main{
 }

 

编译运行Main_test.java后输出了“Hello Word!”,说明main方法是可以被继承。

4、main方法的隐藏

Main.java:
 public class Main{
  public static void main(String[] args) {
   System.out.println("Main");
  }
 }
Main_test.java
 public class Main_test extends Main{
  public static void main(String[] args) {
   System.out.println("Main_test");
  }
 }

 

很显然父类Main中的main方法被隐藏,结果显示的是子类中的main方法中的内容。

总结

以上所述是小编给大家介绍的Java main方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • java中重写父类方法加不加@Override详解

    java中重写父类方法加不加@Override详解

    这篇文章主要介绍了java中重写父类方法加不加@Override详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 使用Spring事件监听机制实现跨模块调用的步骤详解

    使用Spring事件监听机制实现跨模块调用的步骤详解

    Spring 事件监听机制是 Spring 框架中用于在应用程序的不同组件之间进行通信的一种机制,Spring 事件监听机制基于观察者设计模式,使得应用程序的各个部分可以解耦,提高模块化和可维护性,本文给大家介绍了使用Spring事件监听机制实现跨模块调用,需要的朋友可以参考下
    2024-06-06
  • Java延迟队列DelayQueue原理详解

    Java延迟队列DelayQueue原理详解

    这篇文章主要介绍了Java延迟队列DelayQueue原理详解,DelayQueue 是一个通过PriorityBlockingQueue实现延迟获取元素的无界队列无界阻塞队列,其中添加进该队列的元素必须实现Delayed接口,而且只有在延迟期满后才能从中提取元素,需要的朋友可以参考下
    2023-12-12
  • 在IDEA里gradle配置和使用的方法步骤

    在IDEA里gradle配置和使用的方法步骤

    这篇文章主要介绍了在IDEA里gradle配置和使用的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java Chassis3应用视角的配置管理技术解密

    Java Chassis3应用视角的配置管理技术解密

    这篇文章主要为大家介绍了Java Chassis3应用视角的配置管理相关的机制和背后故事,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • IDEA实现JDBC的操作步骤

    IDEA实现JDBC的操作步骤

    JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,本文给大家介绍IDEA实现JDBC的操作步骤,感兴趣的朋友一起看看吧
    2022-01-01
  • Spring Boot 整合 Fisco Bcos部署、调用区块链合约的案例

    Spring Boot 整合 Fisco Bcos部署、调用区块链合约的案例

    本篇文章介绍 Spring Boot 整合 Fisco Bcos 的相关技术,最最重要的技术点,部署、调用区块链合约的工程案例,本文通过流程分析给大家介绍的非常详细,需要的朋友参考下吧
    2022-01-01
  • 归并算法之有序数组合并算法实现

    归并算法之有序数组合并算法实现

    这篇文章主要介绍了归并算法之有序数组合并算法实现的相关资料,需要的朋友可以参考下
    2017-07-07
  • Kafka消费客户端协调器GroupCoordinator详解

    Kafka消费客户端协调器GroupCoordinator详解

    这篇文章主要为大家介绍了Kafka消费客户端协调器GroupCoordinator使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Java实例讲解动态代理

    Java实例讲解动态代理

    动态代理指的是,代理类和目标类的关系在程序运行的时候确定的,客户通过代理类来调用目标对象的方法,是在程序运行时根据需要动态的创建目标类的代理对象。本文将通过案例详细讲解一下动态代理,需要的可以参考一下
    2022-06-06

最新评论