当程序没有带命令行参数是会出错,下面程序中的return有什么作用,如果去掉会显示java默认的错误信息。main方法是没有返回值的。但是这里的return怎样解释import java.io.File;
class FileTest {    public FileTest () {
    }
    public static void main(String[] args) {     
        if(args.length==0){
          System.out.println("运行该程序时,请输入以下格式的命令:");
          System.out.println("java FileTest <文件名>");
          return;  
        }
        File file = new File(args[0]);   
        System.out.println("文件或目录是否存在:" +  file.exists());
        System.out.println("是文件吗:" +  file.isFile());
        System.out.println("是目录吗:" +  file.isDirectory());
        System.out.println("名称:" +  file .getName());
        System.out.println("路径: " + file.getPath());
        System.out.println("绝对路径: " + file.getAbsolutePath());
        System.out.println("最后修改时间:" + file.lastModified());    
        System.out.println("文件大小:" + file.length()+ " 字节");
    }
}

解决方案 »

  1.   

    这个return语句的作用是从方法中返回,也就是结束方法的执行
      

  2.   

    main方法是没有返回值的你写的void就是main的返回。没有返回值的是构造器。
    返回void和没有返回是两码事。
      

  3.   

    if(args.length==0)
    指出当命令行没有参数时, 这个程序就不继续执行了, 结束main函数.返回类型为void的函数, 如果在函数中不显示的调用 return; 这个语句, 那么在编译的时候, 编译器会自动的给你加上, 即省点事.所以一般看到的返回类型为void 的函数虽然没有return这个语句, 但实际上内部是存在的.
      

  4.   

    1 return 后面并没有任何内容,所以是void
      而 return 1; 是返回一个数字。2 一个方法有10行,你在第3行return,表示,我不想执行后面的7行了。
      

  5.   

    5楼正解
    正是我想说的
    return 和 return 0  是不同的return跳出所在方法,或是当前循环
      

  6.   

    当args.length=0的时候
    就结束main..无需往下执行,这是一个逻辑判断