Android中为什么有些变量会以m开头?配置Android Studio识别成员变量的m前缀

来源:互联网 发布:手机网络雷达 编辑:程序博客网 时间:2024/05/16 22:37

Android中为什么有些变量会以m开头

 private String mTitleText;

为什么变量名非得以 ‘m’ 开头呢?像上面这样。而不是这样呢?

 private String titleText;

这个疑问终于有一天我找到了答案。

Follow Field Naming Conventions

Non-public, non-static field names start with m.

Static field names start with s.

Other fields start with a lower case letter.

Public static final fields (constants) are
ALL_CAPS_WITH_UNDERSCORES.

也就是说:

  • 非公有、非静态域的变量以m开头(其实就是protected和private成员变量)
  • 静态变量以s开头
  • 其它变量以小写字母开头
  • Public static final变量(常量)以下划线连接全大写ALL_CAPS_WITH_UNDERSCORES

举个例子:

public class MyClass {    public static final int SOME_CONSTANT = 42;    public int publicField;    private static MyClass sSingleton;    int mPackagePrivate;    private int mPrivate;    protected int mProtected;}

好,知道了这些规则,于是我定义了这样一个实体类:

public class User {    private String mName;    private String mPassword;}

下面要生成 getter 和 setter 方法,于是,

按下 Alt + Insert 键 选择 Getter and Setter .

生成下面的代码:

public class User {    private String mName;    private String mPassword;    public String getmName() {        return mName;    }    public void setmName(String mName) {        this.mName = mName;    }    public String getmPassword() {        return mPassword;    }    public void setmPassword(String mPassword) {        this.mPassword = mPassword;    }}

发现 Getter and Setter 方法多了一个 m 。

这样确实很难看,有没有办法让Android Studio 能自动识别出前缀呢?

一张图你就明白了:

这里写图片描述

先打开这个设置页面,然后:

这里写图片描述

这样就Ok了,

现在来看下效果:

public class User {    private String mName;    private String mPassword;    public String getName() {        return mName;    }    public void setName(String name) {        mName = name;    }    public String getPassword() {        return mPassword;    }    public void setPassword(String password) {        mPassword = password;    }}
0 0