public static void copy(File src, File dest){
if( !src.exists() || !dest.isDirectory())
throw new IllegalAccessException("源不存在或者目标不是一个文件夹");//**************

if(src.equals(dest))
throw new IllegalArgumentException("无法复制" + src.getName() + ": 目标文件夹和源文件夹相同");

if(src.equals(dest.getParentFile()))
throw new IllegalArgumentException("无法复制" + src.getName() + ": 目标文件夹是源文件夹的子文件夹");

if(src.isDirectory())
dirCopy(src, dest);
if(src.isFile())
fileCopy(src, dest);

解决方案 »

  1.   

    打*****的一行eclipce总不放过,但是下面的两个throw就没问题。。
    我很不懂,难道是IllegalAccessException和IllegalArgumentException这些异常类的问题?
    如果是的话,那到底是为什么?
    我实在被搞晕了
    求赐教!!!!!!!!!!
      

  2.   

    ;//**************
    eclipse 解析这个注解出现问题了,不用管它,能编译就行
      

  3.   

    public static void copy(File src,File dest) throws IllegalAccessException {
       .............
    }
    IllegalAccessException 是checked异常
      

  4.   


    受检查异常为什么在这里就不可以通过?IllegalArgumentException是运行是异常吗?
      

  5.   


    public static void copy(File src, File dest) throws Exception
    这个方法需要抛出异常的。
      

  6.   

    checked异常就是在编译的时候就要去try catch或者在方法里抛出。IllegalArgumentException是运行是异常吗?
    是的
      

  7.   

    IllegalArgumentException是runtimeexception
    IllegalAccessException 不是,所以IllegalAccessException 必须抛出或trycatch,而且这里也不应该抛IllegalAccessException 异常吧?应该是抛IllegalArgumentException参数错误的异常IllegalAccessException 说明:当应用程序试图反射性地创建一个实例(而不是数组)、设置或获取一个字段,或者调用一个方法,但当前正在执行的方法无法访问指定类、字段、方法或构造方法的定义时,抛出 IllegalAccessException。 
      

  8.   

    IllegalArgumentException抛出的异常表明向方法传递了一个不合法或不正确的参数。 
      

  9.   

    还是有点模棱两可……抓狂ing
      

  10.   

    看看api对2个异常的说明和java的异常体系