您的位置:首页 > 移动开发 > Android开发

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

2017-05-10 19:14 1351 查看

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;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android AS android-studio