int setAge(int age){
   if(Age < 0)
      return;
    this.age = age;
}如何让编译器认为setAge(-3);
在编译期就出错呢,而不是运行这个方法去检查才出错。

解决方案 »

  1.   

    编译器检查的是语法错误,-3作为int型传入是没有语法错误的,所以编译器不会报错,只能手动添加一个方法才行。
      

  2.   

    http://topic.csdn.net/u/20091023/21/0bb415f8-94fd-4973-a81f-a3f0e30bf2d8.html
      

  3.   


    return;
    this.age = age;
    //而且return后面跟个赋值语句也么有意义。 return 的返回都没有。
    //因该如下
    //return -1;  //0或-1 或其他负数都无所谓,主要说明不存在这种年龄
      

  4.   

    -3也属于int型,java本身是不错报错滴...
      

  5.   

    语法问题return 后不能有别的语句了
      

  6.   


    int setAge(int age){
    if(Age < 0)
    throws new YourException();
    }楼主是想这样吗?
      

  7.   

    int setAge(int age){
    if(Age < 0)
    {
    System.out.println("输入错误");//纯新手的理解 或则thorws
    }
      

  8.   

    这样做没有意义吧。
    是不是要求重新编译JAVA环境?
      

  9.   

    int setAge(int age){
      if(Age < 0)
      return;应该返回INT型
      this.age = age;
    应该有返回值。
    }其他没有发现什么有意义的地方。