【问题标题】:I want to access inner class variable from my Outer class method in Android Activity我想从 Android Activity 中的外部类方法访问内部类变量
【发布时间】:2010-08-31 10:00:29
【问题描述】:

那里有聪明人可以回答这个问题吗?

我正在使用以下代码执行一些任务, 我想从外部类方法访问内部类变量。

class Outer extends Activity
{

 private Handler mHandler = new Handler();

  StopTheThread()
  {
     mHandler.removeCallbacks(mUpdateTimeTask);// this is the wat i want to do
  }

  class Inner 
  {
     final Runnable mUpdateTask = new = new Runnable() {
           public void run() {

           //Some Code Goes Here

       }
     };

     InnerClassMethod()
     {

       mHandler.removeCallbacks(mUpdateTimeTask);// This statement working fine here
      } 

  }

}

这里的 mUpdateTask 是内部类变量,不能从外部类访问 请告诉我如何写那行

【问题讨论】:

    标签: java android


    【解决方案1】:

    您需要一个 Inner 实例来访问 mUpdateTask 变量。

    类似:

    Inner inner = new Inner();
    inner.mUpdateTask
    // ...
    

    【讨论】:

      【解决方案2】:

      只需将 mUpdateTask 设为静态 ...并使用内部类名调用.. Inner.mUpdateTask

      您也可以使用能够重新运行 mUpdatetask 的 getter。

      如果你正在创建这个 Innerclass 的对象,我真的看不出这个问题的任何意义..你总是可以按照上述 Vivien 的方式调用。

      【讨论】:

        【解决方案3】:

        创建一个内部类对象,然后访问它

        Inner inner = new Inner();
        inner.mUpdateTask
        // use this 
        

        您可以创建一个静态 mUpdateTask 对象并可以使用类名访问它

        Inner.mUpdateTask
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-07-08
          • 1970-01-01
          • 2013-05-07
          相关资源
          最近更新 更多