`

java 包、类、方法、属性、常量的命名规则

    博客分类:
  • java
阅读更多

Java的包名都有小写单词组成,类名首字母大写;包的路径符合所开发的 系统模块的 定义,比如生产对生产,物资对物资,基础类对基础类。以便看了包名就明白是哪个模块,从而直接到对应包里找相应的实现。

 

    由于Java面向对象的特性,每名Java开发人员都可以编写属于自己的Java Package,为了保障每个Java Package命名的唯一性,在最新的Java编程规范中,要求开发人员在自己定义的包名前加上唯一的前缀。由于互联网上的域名称是不会重复的,所以多数开发人员采用自己公司在互联网上的域名称作为自己程序包的唯一前缀。例如: com.sun.swt.……。

 

    从而,我们知道,一般公司命名为“com.公司名.项目名.模块名....”。
    那,我们个人的项目又怎么命名呢?

    经过我对“个人的”单词搜索,有“individual、personal、private、one-man”,进一步对以上4个单词词意的分析,并在保证了唯一性,使用每个单词的前4个字母作为前缀,正好和“com”也做了区分。如下:

    indi :

         个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。

         包名为“indi.发起者名.项目名.模块名.……”。

    pers :

         个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人。

         包名为“pers.个人名.项目名.模块名.……”。

    priv :

         私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人。

         包名为“priv.个人名.项目名.模块名.……”。

    onem :

         与“indi”相同,推荐使用“indi”。

 

    另外,我为了区分团队项目和前面所说项目的区分,还有了一下扩展:

    team :

         团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有。

         包名为“team.团队名.项目名.模块名.……”。

    com :

 

 公司项目,copyright由项目发起的公司所有。

         包名为“com.公司名.项目名.模块名.……”。

 

1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名。比如www.baidu.com 对于包名:每个字母都需要小写。比如:com.baidu.test;该包下的Test类的全名是:com.baidu.Test.java 。

 
如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package)。
 
2:类:首字母大写,如果一个类由多个单词构成,那么每个单词的首字母都大写,而且中间不使用任何的连接符。尽量使用英文。如ConnectionFactory
 
3:方法:首单词全部小写,如果一个方法由多个单词构成,那么从第二个单词开始首字母大写,不使用连接符。addPerson
 
4:属性:与方法相同。如ageOfPerson
 
5:常量:所有单词的字母都是大写,如果有多个单词,那么使用下划线链接即可。
 
如:public static final int AGE_OF_PERSON = 20;  //通常加上static
分享到:
评论

相关推荐

    java基础案例与开发详解案例源码全

    3.3.3 Java标识符命名规则41 3.3.4 关键字42 3.3.5 常量42 3.4 运算符43 3.4.1 算术运算符43 3.4.2 赋值操作符45 3.4.3 关系操作符47 3.4.4 逻辑操作符48 3.4.5 位操作符49 3.4.6 移位运算符49 3.4.7 其他操作符50 ...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

     public 说明类为公共类,该类可以被当前包以外的类和对象使用。  private 说明类为私有类。 (4) extends 子句用于说明类的直接超类。 (5) implements 子句用于说明类中将实现哪些接口,接口是 Java 的一种...

    Java高级程序设计实战教程第一章-Java编码规范.pptx

    1.2.4 命名规范 命名指系统中对包名、目录(类名)、方法、常量、变量等标识符的命名。标识符的命名力求做到统一、达意、简洁,遵循驼峰法则。 统一是指对于同一个概念,在程序中用同一种表示方法。例如对于供应商...

    JAVA基础课程讲义

    命名规则(规范) 25 基本数据类型(primitive data type) 26 整型变量 26 浮点型 27 字符型(2个字节): 28 boolean类型 29 运算符(operator) 29 二元运算符 29 一元运算符 30 布尔逻辑表达符 30 位运算符 30 扩展...

    java 面试题 总结

     final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的...

    Java语言基础下载

    常用类方法说明 132 String的方法 132 正则表示式(Regular expression) 133 StringBuffer类 135 StringBuffer与String的区别 136 集合类的使用 136 实例分析 136 内容总结 153 独立实践 154 第十章:JAVA GUI概述 ...

    【05-面向对象(下)】

    仅为该类的属性提供getter方法,不要为该类的属性提供setter方法,因为普通方法无法修改final修饰的 属性  –4.如有必要,重写Object类中hashCode 和equals •缓存实例的不可变类:如果程序经常需要使用不可变类...

    超级有影响力霸气的Java面试题大全文档

     final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的...

    阿里巴巴编码规范 基础技能认证 考题分析(考题+答案).docx

    关于变量、方法名、包的命名,下列哪些说法符合《阿里巴巴Java开发手册》:ABCD A .POJO类中的任何布尔类型的变量,都不要加is,因为部分框架解析时有可能会出现序列化错误。 B .包名统一使用单数形式,如:...

    Visual C#2010 从入门到精通(Visual.C#.2010.Step.By.Step).完整去密码锁定版 I部分

    无论是刚开始接触面向对象编程的新手,还是打算转移到c#的具有c,c++或者java基础的程序员,都可以从本书中吸取到新的知识。 作译者 john sharp,content master首席技术专家。content master隶属于cm集团,cm集团...

    手机软件平台API标准(1.0.3版本正式完整版)

    1.4 命名规则 10 1.5 开发指导原则 11 2 RTL函数 12 2.1 组成 12 2.2 字符测试函数 12 2.3 内存处理函数 19 2.4 字符串处理函数 26 2.5 时间函数 39 2.6 数据转换函数 48 2.7 输入输出函数 58 2.8 随机数函数 90 2.9...

    Visual C++ 2005入门经典--源代码及课后练习答案

    7.11.3 类属性 351 7.11.4 initonly字段 364 7.11.5 静态构造函数 366 7.12 小结 367 7.13 练习 367 第8章 深入理解类 369 8.1 类的析构函数 369 8.1.1 析构函数的概念 369 8.1.2 默认的析构函数 ...

    ZendFramework中文文档

    命名片段 7.9.4. 在响应对象中测试异常 7.9.5. 子类化响应对象 7.10. 插件 7.10.1. 简介 7.10.2. 编写插件 7.10.3. 使用插件 7.10.4. 获取和控制插件 7.10.5. 包含在标准发行包中的插件 7.10.5.1. 动作...

    Oracle11g从入门到精通

    从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用开发基础,并通过两个完整案例来介绍基于Java开发包和Oracle数据库...

    Oracle11g从入门到精通2

    从实际角度出发,系统地介绍了数据库和Oracle的相关概念和原理、Oracle的数据库管理(如安装与启动,用户权限、备份与恢复等),以及Oracle的应用开发基础,并通过两个完整案例来介绍基于Java开发包和Oracle数据库...

    PL/SQL 基础.doc

    4. 标识符命名规则答: 1) 字母开头; 2) 后跟任意的 非空格字符 数字 货币符号( $ ) 下划线( _ ) 或 # ; 3) 最大长度为30个字符(八个字符左右最合适); 用来给对象命名(潜规则): 变量: 以v_开头 游标: 以c_...

    C#微软培训资料

    14.4 继承中关于属性的一些问题.169 14.5 小 结 .172 第四部分 深入了解 C#.174 第十五章 接 口 .174 15.1 组件编程技术 .174 15.2 接 口 定 义 .177 15.3 接口的成员 .178 15.4 接口的实现 .182 ...

    JBoss Seam 工作原理、seam和hibernate的范例、RESTFul的seam、seam-gen起步、seam组件、配置组件、jsf,jboss、标签、PDF、注解等等

    Java EE 框架..................................................................................................................................................................................1 ...

Global site tag (gtag.js) - Google Analytics