1,包名
一级包名是顶级域名,通常为com
,edu
,gov
,net
,org
等,二级包名为公司名,三级包名根据应用进行命名
2,类名
类 | 描述 | 例如 |
---|---|---|
Activity 类 | Activity为后缀标识 | 欢迎页面类WelcomeActivity |
Adapter类 | Adapter 为后缀标识 | 新闻详情适配器 NewDetailAdapter |
解析类 | Parser为后缀标识 | 首页解析类HomePosterParser |
工具方法类 | Utils或Manager为后缀标识(与系统或第三方的Utils区分)或功能+Utils | 线程池管理类:ThreadPoolManager日志工具类:LogUtils(Logger也可)打印工具类:PrinterUtils |
数据库类 | 以DBHelper后缀标识 | 新闻数据库:NewDBHelper |
Service类 | 以Service为后缀标识 | 时间服务TimeService |
BroadcastReceiver类 | 以Receiver为后缀标识 | 推送接收JPushReceiver |
ContentProvider类 | 以Provider为后缀标识 | ShareProvider |
自定义的共享基础类 | 以Base开头 | BaseActivity,BaseFragment |
3.3 方法名
方法名都以lowerCamelCase
风格编写。
方法名通常是动词或动词短语。
方法说明initXX()初始化相关方法,使用init为前缀标识,如初始化布局initView()isXX() checkXX()方法返回值为boolean型的请使用is或check为前缀标识getXX()返回某个值的方法,使用get为前缀标识setXX()设置某个属性值handleXX()/processXX()对数据进行处理的方法displayXX()/showXX()弹出提示框和提示信息,使用display/show为前缀标识updateXX()更新数据saveXX()保存数据resetXX()重置数据clearXX()清除数据removeXX()移除数据或者视图等,如removeView();drawXX()绘制数据或效果相关的,使用draw前缀标识
4 常量名
常量名命名模式为CONSTANT_CASE
,全部字母大写,用下划线分隔单词。那,到底什么算是一个常量?
每个常量都是一个静态final
字段,但不是所有静态final
字段都是常量。在决定一个字段是否是一个常量时,考虑它是否真的感觉像是一个常量。例如,如果任何一个该实例的观测状态是可变的,则它几乎肯定不会是一个常量。只是永远不打算改变对象一般是不够的,它要真的一直不变才能将它示为常量。
// Constants
static final int NUMBER = 5;
static final ImmutableListNAMES = ImmutableList.of("Ed", "Ann");
static final Joiner COMMA_JOINER = Joiner.on(','); // because Joiner is immutable
static final SomeMutableType[] EMPTY_ARRAY = {};
enum SomeEnum { ENUM_CONSTANT }
// Not constants
static String nonFinal = "non-final";
final String nonStatic = "non-static";
static final SetmutableCollection = new HashSet();
static final ImmutableSetmutableElements = ImmutableSet.of(mutable);
static final Logger logger = Logger.getLogger(MyClass.getName());
static final String[] nonEmptyArray = {"these", "can", "change"};
方法说明initXX()初始化相关方法,使用init为前缀标识,如初始化布局initView()isXX() checkXX()方法返回值为boolean型的请使用is或check为前缀标识getXX()返回某个值的方法,使用get为前缀标识setXX()设置某个属性值handleXX()/processXX()对数据进行处理的方法displayXX()/showXX()弹出提示框和提示信息,使用display/show为前缀标识updateXX()更新数据saveXX()保存数据resetXX()重置数据clearXX()清除数据removeXX()移除数据或者视图等,如removeView();drawXX()绘制数据或效果相关的,使用draw前缀标识
3.5 非常量字段名
非常量字段名以lowerCamelCase
风格的基础上改造为如下风格:基本结构为scopeVariableNameType
。
scope:范围
非公有,非静态字段命名以m开头。
静态字段命名以s开头。
公有非静态字段命名以p开头。
公有静态字段(全局变量)命名以g开头。
例子:
public class MyClass {
int mPackagePrivate;
private int mPrivate;
protected int mProtected;
private static MyClass sSingleton;
public int pField;
public static int gField;
}
https://github.com/Blankj/AndroidStandardDevelop