class student{
String name="Tom";
int age=12;

setAge(int age){
this.age=age;
return age;
}
}
public class Test{
public static void main(String args[]){

student stu=new student();
System.out.println("Name:"+name+"\n"+"Age:"+age);
stu.setAge(15);
System.out.println(age);
}
}
这是我尝试写的东西...很新手..哈哈...
编译了几次都提示 缺少返回类型.
setAge(int age){
this.age=age;
return age;
}
这是为什么?

解决方案 »

  1.   

    public int setAge(int age)
      

  2.   

    Java中每一个方法都必须有返回类型,如果什么都不返回也要用void明确
    所以setPage()方法必须加个返回类型,如:
    public int setAge(int age)
      

  3.   

    public void setAge(int age){//一般用这个设定age
          this.age=age
      }public int getAge(){  //一般用这个来取age
      return age;
    }楼主的错误是因为setAge函数没给返回类型加上返回类型就好了
    int setAge(int age){this.age=age;return age;}
      

  4.   

    getAge(){
    return age ;
    }setAge(int age){
    this.age=age;}
      

  5.   

    set**一般是赋值的,返回类型is void;
    取值一般取名get** ,返回类型自己确定。public 返回类型 get**(){}
      

  6.   

    你不加个返回类型,人家怎么知道你返回什么东西啊。除非是构造函数,不然都得要,没有返回值的话加个“void”!
      

  7.   

    set方法不要返回类型,get时候返回就行了
      

  8.   

    public int setAge(int age){
    this.age=age;
    return age;
    }
      

  9.   

    class student{
    String name="Tom";
    int age=12;
    }
    .....
    stu.setAge(15);
    System.out.println(age);方法没有返回值类型,不能给定义的字段age(int 类型)赋值 
    所以最好也设个int返回类型
      

  10.   

    楼主,有renturn的语句  都必须定义返回类型,
    也就是在方法前面  写个类型。
    void 就可以不返回了
      

  11.   

    class student{
     String name="Tom";
     int age=12;public int setAge(int age){
     this.age=age;
     return age;
     }
    }楼主碰到的问题也是我刚开始学习JAVA老百思不得其解的问题,JAVA语言代码由两部分组成,一部分是成员变量,就是直接定义在类下的,非方法内部的,如:int age=12; 另外一部分是方法(或者内部类),写方法的时候必须遵守JAVA定义方法的规范,首先是public、private、protected等访问权限修饰符,其次是方法的返回类型,即你想return的值的类型,若没有返回值就写void,但不像访问权限修饰符,这里的返回值类型不写是无法通过编译的,就是楼主所碰到的问题,再其次是方法名,参数列表。多加练习就熟悉了。