2015-03-02 2 views
0

Представьте себе следующий случай:Используя если заявление с сеттеров или не

int foo, bar; 

... here the value of bar might change 

if (foo != bar) { 
    setFoo(bar); 
} 

setFoo(Object bar){ 
    this.bar = bar; 
} 

Таким образом, здесь мы имеем в целое число значений, а значение переменной бар может измениться. Затем мы проверяем с , если, если панель изменилась, и если это было сделано, мы изменим значение foo переменной на баров значение. Было бы лучше просто вызвать метод setFoo каждый раз и оставить вне , если заявление, или оставить его как есть, потому что это решение выражает «это значение может не измениться». Это довольно субъективный вопрос, поэтому я хотел бы видеть ваше мнение и объяснение ситуации.

Мое личное мнение, оставьте , если заявление.

+1

Как указано, выбор полностью субъективен (и ИМО не очень интересен). В других контекстах могут быть объективные причины, чтобы избежать вызова сеттера, когда нет изменений ... или в том, чтобы заставить сеттера выполнять проверку. –

ответ

1

Если вы вызываете setFoo каждый раз, когда стек более занят, то лучше оставить функцию внутри , если. Простая проверка, как равные, является менее дорогой и не занимает память в стеке каждый раз.

+0

@ user2340939, если вы согласны с этим ответом, вы должны отметить его как принятый –

Смежные вопросы