大家好!
    我想定义一个变量,在一个class的多个方法之间公用,但是下面的代码在运行的时候有错误,请大家帮我看看,谢谢!
public class TestHtml
{
  public String mystr1 = "";  public void wdDoInit()
  {
    mystr1 = "0123";
  }
  public void onActionExportIE(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
  {
    String mystr2 = mystr1 + "b";
  }}

解决方案 »

  1.   

    public static String mystr1 = "";
    public static void wdDoInit()
    {
        mystr1 = "0123";
    }public static void onActionExportIE(.....)
    {
        String mystr2 = mystr1 + "b";
    }
      

  2.   

    public static String mystr1 = "";
    public static void wdDoInit()
    {
        mystr1 = "0123";
    }public static void onActionExportIE(.....)
    {
        String mystr2 = mystr1 + "b";
    }
      

  3.   

    public class TestHtml 

      public static String mystr1 = ""; //要在静态区域使用静态变量
      public void wdDoInit() 
      { 
        mystr1 = "0123"; 
      } 
      public void onActionExportIE(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent ) 
      { 
        String  mystr2 = mystr1 + "b";     } } 
      

  4.   

    public static String mystr1 = "";
      

  5.   

    为什么要用static,LZ的代码没问题啊
      

  6.   

    变量要定义为static才能共享吧!
      

  7.   

    用Static是有道理的,因为静态变量是属于类的,而在构造方法里或是方法代码块声明的变量事实上都可以看成为“局部变量”。
      

  8.   

    lz我建议你还是将你要描述的问题,写清楚。因为就你上面的代码是没问题的,难道你是要想将重新获值的mystr1得以应用吗?如果是这样的话那方法就多了
      

  9.   

    什么static问题,他那几个方法都不是static的,何必要用static变量??楼主代码根本没错,楼主把问题描述清楚再说。
      

  10.   

    多谢大家的热心帮助,现在问题已经解决,
    刚才大家有的说代码有问题, 有的说没有问题也都晕了!
    我使用的软件是webdynpro,它的语言是java,
    但是它在定义变量的时候有严格的要求(位置上)给前后加个标签就好了,
    如下:public class TestHtml 

      public void wdDoInit() 
      { 
        mystr1 = "0123"; 
      } 
      public void onActionExportIE(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent ) 
      { 
        String mystr2 = mystr1 + "b"; 
      }   //@@begin others
       public String mystr1 = "";
      //@@end
    }   //@@begin others
       public String mystr1 = "";
      //@@end希望大家能知道这个原因,谢谢!稍后结贴!
      

  11.   

    不好意思,代码发重复了,我没有权限修改,最下面的,  //@@begin others
          public String mystr1 = "";
      //@@end不要了