【问题标题】:Eclipse keep telling me remove final modifier of arraylistEclipse 一直告诉我删除 arraylist 的 final 修饰符
【发布时间】:2013-06-12 10:56:51
【问题描述】:

我有一个arrayList= new ArrayList<FriendsData>();,它在我的 Base Activity 的接口内定义。

public interface RequestUsers
    {
        ArrayList<FriendsData> arrayList    =  new ArrayList<FriendsData>();

    }

我已经尝试清理并重新启动 Eclipse,但没有任何反应。

请解释为什么 -1 如果你认为我是,我会删除我的问题 与 STACKOVERFLOW 的人相比更愚蠢。

【问题讨论】:

  • 请发布确切的代码和消息!
  • 确切代码太大,无法发布
  • Eclipse 给出的确切消息是什么?
  • remove invalid final modifier

标签: java android interface arraylist final


【解决方案1】:

接口中的变量只能是常量(即static final)。即便如此,在接口中包含字段通常被认为是糟糕的风格。

如果您在超类中确实需要它而不是单独的扩展实例,则另一种方法是使用 abstract class 而不是 interface

【讨论】:

  • 我的班级已经有一个BaseFragment Class。我想在我的片段和模型类中使用数组列表。
  • 那么组合肯定更合适吗?也许为每个类提供相同的ArrayList,您希望它们作为构造函数中的参数共享会是一个更好的设计?
  • 第二个类是只初始化一次的适配器类。它基于在运行时生成的 arraylist 项。 Adapter有一个listner,根据arraylist触发事件。
  • 好的,那么为什么不能将相同的 ArrayList 传递给需要它以某种形状或形式的其他类,无论是参数化构造函数、修改器等吗?
  • 这里是确切的场景。我有一个gridview,其中有一个膨胀的布局,其中包含一个imageview 和一个checkboxgridview 是通过单独的适配器类初始化的。这个gridview 有两个侦听器,一个是适配器类内部的checkbox,另一个是gridview OnItemClickListener,它们都在访问相同的arraylist
猜你喜欢
  • 2015-04-29
  • 1970-01-01
  • 2011-11-11
  • 1970-01-01
  • 1970-01-01
  • 2015-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多