public class Student { 
     public String sname; // 学生姓名
      public String sno;// 学号
     Student(String  sno) {// 构造方法参数为 学号
this.sno = sno;
}
    public String getsname() {//获得姓名的方法
String sno=this.sno;
String sname=null;
try{
                     sname=……    //sname经过一系列操作     
    }catch(SQLException e){
e.printStackTrace();
}
return sname;
}
请问如何能让getname最后返回的值是经过操作后的值?这里好像就是直接返回之前定义的sname!在下菜鸟,请各位高手帮忙解决下!先谢过了~

解决方案 »

  1.   

    对this.sname进行操作吧
    try{ 
                         this.sname=……    //sname经过一系列操作      
        }catch(SQLException e){ 
    e.printStackTrace(); 

      

  2.   

    额....你应该去看看书的.....你重复定义sname变量了.... 方法里直接用sname变量就行了 不用再次声明了...建议多看看例子先 
      

  3.   

    lz的代码错不在楼上两位而言,只需要把renturn sname;放到try块中.
    然后在catch块中返回异常时应该返回的值即可
      

  4.   

    同意二楼的,你在getsname中又定义了一个局域变量,你只对它进行了操作.而你
    实际上要用的是public String sname;这个sname.
    好好看看书吧.