你只输入一个参数?单使用了2个参数:
String aa=args[0];
String bb=args[1];发生了数组越界的异常

解决方案 »

  1.   

    你输入一个参数
    String bb=args[1];
    语句执行到这里就中断了
    然后执行
    catch(ArrayIndexOutOfBoundsException na)
    {
    System.out.println("未提供任何参数");
    }
    哪里有机会执行bird?应该判断
    args.length
    等于1就是1个参数
    等于2就是2个参数class Suan 
    {
    public static void main(String args[])
    {
    String aa="";
    String bb="";

    if(args.length==1)
    {
    aa=args[0];
    int num1=Integer.parseInt(aa);
    rectangle ff=new rectangle();
    ff.bird(num1);
    }

    else if(args.length>=2)
    {
    aa=args[0];
    bb=args[1];
    int num1=Integer.parseInt(aa);
    int num2=Integer.parseInt(bb);
         square cc=new square();
    cc.boss(num1,num2);
    }else{
    System.out.println("参数错误");
    }
    }
    }