Android中使用Getters和Setter的简单框架

时间:2014-10-16 13:06:15

标签: simple-framework

我是Simple Framework的新手,但我没有找到任何关于使用Getters / Setters的建议,因为他们知道从性能的角度来看,他们在Android方面并不擅长。

http://developer.android.com/training/articles/perf-tips.html#GettersSetters

有没有办法在Simple-Framework中不使用它们?

1 个答案:

答案 0 :(得分:1)

对于代码示例,我的答案可能会更好,但差不多。无论何时处理类中的字段,都要尝试使用实际变量与方法。

例子。在您的课程中,您将使用它,如下所示:

public class Foo
{    
    public Object bar; // This would be private if I was using a getter

    public void doSomeStuff()
    {
          if(bar)
          {
              //work the bar
          }
    }

    public Object getBar()
    {
         return bar;
    }
 }

然后在外部,它会像这样使用:

public class OtherFoo
{
  public void somethingElse()
  {
      Foo ob = new Foo();
      inner = ob.getBar();
   }

}

外部getter在这里是pro / con,因为它们确实违反了规定的性能规则,但它们促进了更好的实践(保留的封装,更少的讨厌耦合,更好的可维护性等)。

尽管如此,这个性能提示可以随意使用,因为Android设备已经变得越来越强大(事实上,我很确定这个性能命中几乎已经从GingerBread中删除了) 。

我个人的建议是遵循OOP原则,尽可能使用getter,除非存在严重的性能问题。