避免使用保留字的变量命名约定
Naming convention for variables to avoid using reserved words
我想知道是否有代表保留字的变量的命名约定。例如,我将 class 称为 Video
,并且该视频必须包含一个布尔值来定义它是否是私有的。
由于 private boolean private;
行不通,我想知道最好的选择是什么。
- m私人
- _私人
- 是私有的
- 不公开
- ...
有什么建议吗?
只要把实例变量代表什么就行了。即您的 class 是视频,您想要的实例变量是 "private",您不能使用它,所以只需将其命名为 privateVideo。所以你的 getter 和 setter 会像 isPrivateVideo, setPrivateVideo
如果你能想到一个两个单词的名字,你就不会发生任何冲突:
private
-> isPrivate
new
-> newItem
- ...
此外,它通常更具可读性。
我经常看到的唯一常见名称冲突是上面提到的 class
-> clazz
。
isPrivate 听起来足以满足您的情况。我总是倾向于这样命名我的布尔变量:
是某事
有东西
等..
因为它是 boolean
我认为使用 isPrivate
是最好的选择,因为它意味着变量是布尔值。它也比 notPublic
更好,因为 "true" 值更好地反映了名称。
mPrivate 看起来像是您拥有的某个 Private
对象的名称,所以我会远离它。
所以总而言之我认为isPrivate
是你最好的选择
在这种情况下,如果 true/false 是唯一的选择,那么引入枚举可能有点矫枉过正。 (在下面的例子中,保留字的问题通过在枚举中使用大写字来避免。)
public class Video {
public enum Access {
PRIVATE, RESTRICTED, PUBLIC;
}
private String name;
private Access access;
public Video(String name, Access access) {
this.name = name;
this.access = access;
}
public static void main(String[] args) {
new Video("Alien", Access.PUBLIC);
new Video("Home movie", Access.PRIVATE);
}
}
我想知道是否有代表保留字的变量的命名约定。例如,我将 class 称为 Video
,并且该视频必须包含一个布尔值来定义它是否是私有的。
由于 private boolean private;
行不通,我想知道最好的选择是什么。
- m私人
- _私人
- 是私有的
- 不公开
- ...
有什么建议吗?
只要把实例变量代表什么就行了。即您的 class 是视频,您想要的实例变量是 "private",您不能使用它,所以只需将其命名为 privateVideo。所以你的 getter 和 setter 会像 isPrivateVideo, setPrivateVideo
如果你能想到一个两个单词的名字,你就不会发生任何冲突:
private
->isPrivate
new
->newItem
- ...
此外,它通常更具可读性。
我经常看到的唯一常见名称冲突是上面提到的 class
-> clazz
。
isPrivate 听起来足以满足您的情况。我总是倾向于这样命名我的布尔变量:
是某事
有东西
等..
因为它是 boolean
我认为使用 isPrivate
是最好的选择,因为它意味着变量是布尔值。它也比 notPublic
更好,因为 "true" 值更好地反映了名称。
mPrivate 看起来像是您拥有的某个 Private
对象的名称,所以我会远离它。
所以总而言之我认为isPrivate
是你最好的选择
在这种情况下,如果 true/false 是唯一的选择,那么引入枚举可能有点矫枉过正。 (在下面的例子中,保留字的问题通过在枚举中使用大写字来避免。)
public class Video {
public enum Access {
PRIVATE, RESTRICTED, PUBLIC;
}
private String name;
private Access access;
public Video(String name, Access access) {
this.name = name;
this.access = access;
}
public static void main(String[] args) {
new Video("Alien", Access.PUBLIC);
new Video("Home movie", Access.PRIVATE);
}
}