zoukankan      html  css  js  c++  java
  • Java命名规范(新手宝典)

    很多刚开始学习Java的童鞋都不知道如何命名类文件,方法名,字段名,常量名等,今天抽出时间整理了了一下。大佬绕过

    Java命名的组成规则:英文大小写字母,数字,$和_.

    这里有几点需要注意:

    • 不能以数组开头
    • 不能是Java中的关键字
    • 区分大小写
    • 包的命名全部必须是小写
    • 如果是单级包则全部用小写,如果是多级包则用逗号隔开,例如(com.baidu.api.service.config)

    具体如下:

    驼峰法则

    1、将所有字母都小写(包括缩写),然后将单词的第一个字母大写。

    2、每个单词的第一个字母都大写,来得到大驼峰式命名。

    3、除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名

    为避免歧义,文中小驼峰法统称为驼峰法,大驼峰/帕斯卡法统称为大驼峰法则。(以上来自互联网)

    包命名(Package)

    项目包命名规则:<域名反转>.<团队名>.<项目名>。相关项目可使用<域名反转>.<团队名>.<父项目名>.<子项目名>的命名法则

    命名必须全部使用英文小写字母,禁止使用“下划线”等字符。(除常量外,Java命名习惯中均不推荐使用下划线等字符

    例如:(百度公司,对外提一个api服务,是个旅游的项目,配置包)

    com.baidu.api.tourism.config

    Class、Object、Interface(类,对象,接口)

    类和接口使用大驼峰命名法

    类名强烈建议使用名词,如果一个类里边包含多个名词那么各个单词首字母大写,类名最好见名知意,一般会选择有意义的名字,能快速地传达该类的用途

    抽象类使用“Abstract”做为类命名的开头

    Exception类命名使用“Exception”做为类命名的结尾

    Test类使用“Test”做为类命名的结尾

    在面向接口编程中,接口的实现类的命名规则为:<接口名>+"Impl"。禁止使用匈牙利命名法。

    例如:

    有以下接口
    public Interface Dog
    
    实现类命名应该为
    public Class WhiteDogImpl implements Dog

    Method、Function(方法或者函数)

    方法的命名使用驼峰法,一般使用动词或动词+名词组合。

    设置/获取某个值的方法,命名为setV/getV

    返回长度的方法,命名为length

    判断布尔值的方法,命名为isV

    将对象转换为某个特定类型的方法应该命名为toT

    例如:

    • getSecreStage()
    • length()
    • isEmpty()
    • toSpecialFormat()

    Variable、(变量名)

    变量的命名使用驼峰命名法:

    例如:

    • openId
    • userName

    常量

    常量命名使用大写字母并用下划线分割

    • MAX_ARR_SIZE
    • CURRUSER_USERNAME

    常用案例

    public class Person { //类名一定要大写,并且是见名知意
      private String userName; //用户名  采用驼峰命名法
      private String address; //地址
      private Boolean isLock;  //是否锁定
    
      public Person(){
         //这里是构造函数
      }
    
      public void sayHello(){
         //人会说话,属于人的姓名
      }
    
      public void toString(){
         //重新toString方法
      }
    
    
    }

    以上部分内容来自互联网,有问题可以在下面评论,讨论技术问题可以私聊。

  • 相关阅读:
    车厢调度
    字符串匹配问题x
    单词查找树
    【説明する】树
    计算(calc.cpp) 这题我搞了2晚上qwq
    [HDOJ4578]Transformation(线段树,多延迟标记)
    [Codeforces670A]Holidays(数学,构造)
    [Codeforces677C]Vanya and Label(组合数学,快速幂)
    [Codeforces677B]Vanya and Food Processor(模拟,数学)
    [Codeforces673C]Bear and Colors(枚举,暴力)
  • 原文地址:https://www.cnblogs.com/c1024/p/11012046.html
Copyright © 2011-2022 走看看