public class ff
 {
    boolean first=false;
    public String a(){first=true;}
    public boolean b(){return first;}

  
在另外一个javabean里面调用ff。先调用a,然后再调用b。结果还是false。为什么呢?

解决方案 »

  1.   

    public String a(){first=true;}???
      

  2.   

    public void a(){first=true;}
      

  3.   

    public String a(){first=true;}写错了
    改成:
    public void a(){first=true;}
    然后在另一个类如下:
    public class test {    public static void main(String[] args) {
            ff t=new ff();
            t.a();
            System.out.println(t.b());
        }
    }
      

  4.   

    具体是这样的:我在jsp文件里面调用javabean:<jsp:useBean id="b1" class="javabean.b1"/>
    然后b1会调用ff,把first设为true;
    最后jsp文件再调用ff:<jsp:useBean id="b2" class="javabean.ff"/>,把first读出来。
    结果发现first仍然为false。
      

  5.   

    楼主要搞清楚类与实例的关系。在jsp里b1,b2是两个实例,一个改了另一个当然不会随着它便。