Подтвердить что ты не робот

Какие имена полей имеют префикс 'm'?

В соглашении говорится: "Непубличные, нестатические имена полей начинаются с m. Другие поля начинаются с строчной буквы". Означает ли это только поле класса (как в примере 1) или ко всему полю (например, в примере 2)?

Пример 1

public class One {
   private int mFieldOne;
   private int mFieldTwo;

   public void someMethod(){
      int methodFieldOne;
      int methodFieldTwo;
   }
}

Пример 2

public class Two {
   private int mFieldOne;
   private int mFieldTwo;

   public void someMethod(){
      int mMethodFieldOne; //see m here
      int mMethodFieldTwo; //see m here
   }
} 
4b9b3361

Ответ 1

В вашем втором примере mMethodFieldOne и mMethodFieldTwo не являются полями, а только переменными, локальными для someMethod, поэтому соглашение об именах не применяется.

Ответ 2

Он относится только к полям, которые являются членами класса (= m). Другие - локальные переменные.

Ответ 3

Это руководство для разработчиков Android, а не сообщество Java.

Следуйте соглашениям об именах полей. Непубличные имена нестатических полей начните с m.

Имена статических полей начинаются с s.

Другие поля начинаются с строчной буквы.

Публичные статические конечные поля (константы) - ALL_CAPS_WITH_UNDERSCORES.

http://source.android.com/source/code-style.html#follow-field-naming-conventions

В любом случае.. Я думаю, что это необязательно и не согласуется со стилем.

Ответ 4

Внутри метода модификации доступа (private) неприемлемы, ошибка времени компиляции. "Непубличные, нестатические имена полей начинаются с m" означают переменные экземпляра, что является первым случаем. Внутри метода он будет начинаться с маленькой буквы.