Android Java命名规范

本文详细介绍Android项目中的包名结构、类名命名规则,并提供实例,包括Activity、Adapter、Service、BroadcastReceiver等的命名指导。遵循一致性和可读性的原则,助您打造高效、清晰的代码架构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

包(packages)

采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名
包名此包中包含
com.xx.应用名称缩写.activities页面用到的Activity类 (activities层级名用户界面层)
com.xx.应用名称缩写.base页面中每个Activity类共享的可以写成一个BaseActivity类(基础共享的类)
com.xx.应用名称缩写.adapter页面用到的Adapter类(适配器的类)
com.xx.应用名称缩写.tools此包中包含:公共工具方法类(tools模块名)
com.xx.应用名称缩写.bean(或则com.xx.应用名称缩写.unity)此包中包含:元素类
com.xx.应用名称缩写.db数据库操作类
com.xx.应用名称缩写.view(或则 com.xx.应用名称缩写.ui)自定义的View类等
com.xx.应用名称缩写.serviceService服务
com.xx.应用名称缩写.broadcastBroadcast服务

类(classes)

采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,  比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写。
描述例如
Activity 类Activity为后缀标识WelcomeActivity
Adapter类Adapter为后缀标识NewDetailAdapter
公共方法类Tools或Manager为后缀标识线程池管理类:ThreadPoolManager 日志工具类:LogTools
数据库类以DBHelper后缀标识新闻数据库:NewDBHelper
Service类以Service为后缀标识时间服务TimeService
BroadcastReceiver类以BroadcastReceiver为后缀标识
ContentProvider以Provider为后缀标识
直接写的共享基础类以Base开头BaseActivity,BaseFragment

方法(methods)

用小驼峰命名法例如:onCreate(), run()
方法说明
initXX()初始化相关方法,使用init为前缀标识,如初始化布局initView()
isXX()checkXX()方法返回值为boolean型的请使用is或check为前缀标识
getXX()返回某个值的方法,使用get为前缀标识
processXX()对数据进行处理的方法,尽量使用process为前缀标识
displayXX()弹出提示框和提示信息,使用display为前缀标识
saveXX()与保存数据相关的,使用save为前缀标识
resetXX()对数据重组的,使用reset前缀标识
clearXX()清除数据相关的
removeXXX()清除数据相关的
drawXXX()绘制数据或效果相关的,使用draw前缀标识

变量

采用小驼峰命名法
描述例如
局部变量命名除首单词外,其余所有单词的第一个字母大写index
静态成员变量命名s+变量名,单词首字母全部大写sInstance
成员变量命名m+变量名,单词首字母全部大写mMcuManager
常量命名只能包含字母和_,字母全部大写,单词之间用_隔开MSG_BRAKE_ON

资源文件(图片drawable文件夹下)

全部小写,采用下划线命名法,加前缀区分
命名模式:控件名称_逻辑名称/common_逻辑名称
如果有多种形态如按钮等除外如btn_xx.xml(selector)
名称功能
btn_xx按钮图片使用btn_整体效果(selector)
btn_xx_normal按钮图片使用btn_正常情况效果
btn_xx_press按钮图片使用btn_点击时候效果
btn_xx_disable按钮图片使用btn_不可点击时候效果
bg_head背景图片使用bg_功能_说明
def_search_cell默认图片使用def_功能_说明
icon_more_help图标图片使用icon_功能_说明

资源布局文件(XML文件(layout布局文件))

全部小写,采用下划线命名法
  1. contentview命名, Activity默认布局,以去掉后缀的Activity类进行命名。不加后缀:
    功能模块.xml
    例如:main.xml、more.xml、settings.xml
    或则:activity_功能模块.xml
    例如:activity_main.xml、activity_more.xml
  2. Dialog命名:dialog_描述.xml
    例如:dlg_hint.xml
  3. PopupWindow命名:ppw_描述.xml
    例如:ppw _info.xml
  4. 列表项命名list_item_描述.xml
    例如:list_item_city.xml
  5. 包含项:include_模块.xml
    例如:include_head.xml、include_bottom.xml
  6. adapter的子布局:功能模块_item.xml
    例如:main_item.xml

动画文件(anim文件夹下)

全部小写,采用下划线命名法,加前缀区分。
前面为动画的类型,后面为方向
动画命名例子描述
fade_in淡入
fade_out淡出
push_down_in从下方推入
push_down_out从下方推出
push_left推像左方
slide_in_from_top从头部滑动进入
zoom_enter变形进入
slide_in滑动进入
shrink_to_middle中间缩小

Android编码规范建议

  1. Java代码中不出现中文;
  2. 代码中不出现字符串,所有的字符串定义到string.xml中;
  3. 图片尽量分拆成多个可重用的图片;
  4. 使用静态变量方式实现界面间共享要慎重;
  5. Log(TAG,详细描述):TAG以常量的方式定义为该类的类名;
  6. 不要重用父类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突;
  7. activity中在一个View.OnClickListener中处理所有的逻辑;
  8. strings.xml中使用%1$s实现字符串的通配;
  9. 如果多个Activity中包含共同的UI处理,那么可以提炼一个CommonActivity,把通用部分叫由它来处理,其他activity只要继承它即可;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JMchen123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值