码迷,mamicode.com
首页 > 编程语言 > 详细

Java main方法全解

时间:2018-05-08 00:52:59      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:没有   关联   分享   ken   void   虚拟   for   执行   extend   

1、main方法的重载

 1 package cn.nxl2018;
 2 
 3 public class Main_test {
 4     public static void main(String args[]) {
 5         System.out.println("应用程序入口的main方法");
 6         main();
 7         main(10);
 8         main(10, 10);
 9     }
10     public static void main(){
11         System.out.println("无参的main方法");
12     }
13     public static void main(int i){
14         System.out.println("有参的重载main方法");
15     }
16     public static void main(int i,int j){
17         System.out.println("有两个参数的重载main方法");
18     }
19 }

技术分享图片

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

2、main方法的调用

1 public class Main_test {                                        
2     public static void main(String[] args) {
3         main2(args);
4     }
5     public static void main2(String[] args){
6         main(args);
7     }
8 }

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

技术分享图片

3、main方法的继承

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

技术分享图片

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

4、main方法的隐藏

Main.java
1 public class Main{
2     public static void main(String[] args) {
3         System.out.println("Main");
4     }
5 }
Main_test.java
1 public class Main_test extends Main{
2     public static void main(String[] args) {
3         System.out.println("Main_test");
4     }
5 }

技术分享图片

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

关联博客(博客园):

 

 
 

Java main方法全解

标签:没有   关联   分享   ken   void   虚拟   for   执行   extend   

原文地址:https://www.cnblogs.com/qikeyishu/p/9005959.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!