问题1,2:
class Test{
public static void main(String[] args){
Integer[] a = {1, 2, 3,};  //问题1:这里最后一个逗号(3),据说有没有这个逗号,会有很大的不同,请问是什么不同?
for(Integer b : a){   //问题2: 上面这的代码是关于数组的初始化的,那么如果Integer[] a = {new Integer(1), 2, 3,};这两者真的一点区别也没有吗?
System.out.println(b + "");
}
}
}问题3:
public class Test1{
public static void main(String[] args){
Other.main(new String[]{"str1", "str2", "str3",});
}
}class Other{
public static void main(String[] args){
for(String s : args){
System.out.println(s + "");
}
}
}
  这2段代码很有意思,从来没见过这么写的,可是2段代码写在一个文件里面一样可以运行,而且是有2个main方法的,不是一个文件名对应一个类名吗,这里居然出现了2个类,而且都带main方法,概念模糊了~

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【llm0528】截止到2008-07-13 22:42:25的历史汇总数据(不包括此帖):
    发帖的总数量:52                       发帖的总分数:1040                     每贴平均分数:20                       
    回帖的总数量:44                       得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:52                       结贴的总分数:1040                     
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    敬礼!
      

  2.   

    问题1,2感觉很无聊,我也没弄个明白
    问题3
    一个java运行单元,必须有一个public class,程序从main()开始执行
    main()也是一个函数,和其他的函数没什么区别。当然可进行传递消息了。
      

  3.   

    问题1,2没看出什么不同
    3:public的执行。
      

  4.   

    这里涉及到的语法有自动拆装箱,新的循环语法。
    问题1:写逗号数组的长度是3,分别为1、2、3,不写逗号数组的长度是1,只有123。
    问题2:Java新增语法,自动拆装箱,系统自动实现基本数据类型和数据类型类之间的转换
    问题3:准确的说:一个源代码文件内部只能有一个public类,至于非public的类,则可以写任意多个。这样的源代码编译以后形成2个class文件,你执行代码的时候可以选择执行那个。
    java Test1
    java Other
      

  5.   

    是不是第一个最后的a是1,2,3,0。最后一个默认是0
    第二个没弄懂使什么意思
    第三个可以运行,恩,学习。刚知道还能String s : args
      

  6.   

    唉,再解释下,第一个问题,Integer[] a = {1, 2, 3,} 我指的是1逗号 2逗号 3逗号事实是3后面可以不加逗号,但是加了逗号那么和不加逗号就不同了,请问,这不同在哪些方面?(应该是底层上面的优化之类的不同)
      

  7.   

    问题1不太清楚。
    问题2应该是自动打包与解饱的区别。
    问题3楼上已经说的很清楚了,main方法也是一个方法,当然可以调用。
      

  8.   

    javap 反编译一下看看指令吧。可能在优化方面有所不同。
      

  9.   

    第一,那个带逗号的问题我也没搞明白,好像有没有都一样
    第二,就是自动打包解包的问题,效果是一样的
    第三,按顺序执行,我试了,无论是否带public,结果都是执行上面的main函数,好像是从上往下执行的,执行第一个main函数
      

  10.   

    没发现这几个问题
    我认为第二个问题,只是给予显示的包装了,要不然由编译器来执行这一步
    第三个问题就顶Mailbomb的说法了