我想定义这些常量和|它们针对不同的操作生成正确的权限。
将它们定义为:
public static final int READ = 4;
public static final int WRITE = 2;
public static final int EXECUTE = 1;
给我正确的结果,如READ |写|执行或写入|执行。
是否将它们定义为
public static final int READ = 0x4;
public static final int WRITE = 0x2;
public static final int EXECUTE = 0x1;
给我任何好处?
最佳答案
由于它们在十六进制或十进制中是等效的,因此仅增加了其他开发人员的可读性。功能上是相同的。
虽然,如果您这样做是为了提高可读性,考虑到基础系统,八进制甚至会更好:
public static final int READ = 04;
public static final int WRITE = 02;
public static final int EXECUTE = 01;
或更明显的是:
public static final int READ = 1<<2;
public static final int WRITE = 1<<1;
public static final int EXECUTE = 1;
但这可能是过分的:)