我一共有三个界面 列表页,详细信息页面,编辑页
从列表页可以看进入详细列表页,
在详细信息页可以进入编辑页我发现公司里的代码在从详细信息页跳入编辑页的时候
没有使用intent而是使用了静态变量传的值
只有7个变量只是一些string ,int 之类的他们为什么用 静态变量而不使用intent有什么深意吗?过多的静态变量应该会增加软件的运行内存吧

解决方案 »

  1.   

    详细页和编辑页是同一个Activity吧?
      

  2.   

    静态的变量也就是不依赖于对象的变量,对象销毁了,该变量依然存在(换句话说就是占据内存),对于android这种非内存主动管理的来说,最好在ondestory时让变量手动致null或者调用systm.exit方法来建议释放内存,很多时候activity关闭的时候有些资源不会自动释放(例如bitmap)。
    静态的好处就是重复创建对象时不会为静态变量重复分配空间,而是继续使用之前创建的值,这种情况多数会用在工具类或final值(如你说的一些String)。究竟用intent还是static还是取决于实际情况,用intent的话依赖于上一个组件,也就是说如果没有发生跳转的话就娶不到值了,但是用static的话可以使用之前保存过的值。
    这是我的理解...如有差错请赐教
      

  3.   

    用静态变量的优点就是当类被销毁了的时候值还是存在
    可是这几个静态变量只有在这几个界面里才用了我觉得用intent会比较好
      

  4.   

    各有各的优点,不能一概而论。举个例子,假如说一共有5个变量在几个activity中间传递,你从A到B需要传5个变量,而从B到C只要传2个变量,从C到A或从C回到B又要五个变量。如果用静态变量的话这中间就不存在传递的问题,直接取就行了。而你用intent传递从A到B的时候是不是一定要传5个过去,但B页面只用到2个,另外3个是多余的。虽然静态变量使用会多占用内存,但从方便性来说是不是比intent传递要好一些呢?所以说要看情况的,这只是个人理解