首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

测试main函数满载

2012-12-18 
测试main函数重载我使用的jdk版本是:java version 1.6.0_23package com.testpublic class TestMain {pu

测试main函数重载
我使用的jdk版本是:java version "1.6.0_23"

package com.test;public class TestMain {public static void main(String[] args) {System.out.println("main start 1");}public static void main(String[] args) {System.out.println("main start 2");}}

运行结果:
(命令行):编译时错误
Duplicate method main(String[]) in type TestMain

at com.test.TestMain.main(TestMain.java:5)



我用jdk.1.5.0去测试:
(命令行):编译时错误

运行结果:
package com.test;public class TestMain {public static void main(String[] args) {System.out.println("main start 1");}public static void main(String test, String[] args) {System.out.println("main start 2" + test);}}
测试结果两个版本一样:
输出:main start 1
package com.test;public class TestMain {public static void main(String[] args) {System.out.println("main start 1");main(" Echo test.", args);}public static void main(String test, String[] args) {System.out.println("main start 2" + test);}}

测试结果两个版本一样:
输出:main start 1
     main start 2 Echo test.

更换重载方法里的参数类型(一个为String[],一个为boolean):
package com.test;public class TestMain {public static void main(String[] args) {System.out.println("main start 1");}public static void main(boolean flag) {System.out.println("main start 2");}}

测试结果两个版本一样:
输出:main start 1
更换重载方法里的参数类型(一个为Integer[],一个为boolean):
package com.test;public class TestMain {public static void main(Interger[] args) {System.out.println("main start 1");}public static void main(boolean flag) {System.out.println("main start 2");}}

输出(命令行):编译时错误
1.5.0:


其实很多java基础题会有编译时错误和运行错误看具体代码行,也得考虑运行环境是在命令行下,还是在集成开发环境像(Eclipse)中一样。

热点排行