• Java的标识符(命名规范)


    一、标识符

    1、概念

    Java语言中,对于变量,常量,函数,语句块也有名字,我们统统称之为Java标识符.
    标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。

    2、组成

    Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成,且不能以数字开头,也不能是Java关键字和保留字。在Java中是区分大小写的。

    例如下面这些是合法的:
    ¥HelloWorld, $money, HiBuddy, My_name, Persion, _init_val,OK, _123abc, _6_

    下面的标识符是非法的:
    #age,25old,class,&time,if

    3、命名约定

    常用的命名规则:
    Pascal(帕斯卡命名法)规则:每个单词首字母大写(如 TestApp).
    Camel(驼峰命名)规则:除了第一个单词外的其他单词的首字母大写. 如. testApp.
    Upper(大写)规则:仅用于一两个字符长的常量的缩写命名,超过三个字符长度应该应用Pascal规则,例如:PI

    • 类和接口名:帕斯卡命名,每个字的首字母大写,含有大小写。例如,MyClass,HelloWorld,Time等。
    • 方法名:驼峰命名,首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如,myName,setTime等。
    • 变量名:驼峰命名,首字符小写,其余的首字母大写,不用下划线,少用美元符号。给变量命名是尽量做到见名知义。
    • 常量名:基本数据类型的常量名使用全部大写字母,字与字之间用下划线分隔。对象常量可大小混写。例如,SIZE_NAME。

    注意:Java 的 null 不是关键字,类似于 true 和 false,它是一个字面常量(严格说不应该算关键字,应称其为保留字更合适),不允许作为标识符使用。

    常用的转义字符:

    "\b" (退格)
    "\f" (换页)
    "\n" (换行)
    "\r" (回车)
    "\t" (水平制表符(到下一个tab位置))
    "\' " (单引号)
    "\" " (双引号) 
    "\\" (反斜杠)

    二、关键字

    Java关键字是对Java编译器有特殊含义的字符串,是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型、类、方法特性等信息。Java语言共定义了如下所示的关键字。
    abstract
    assert
    boolean
    break
    byte
    case
    catch
    char
    class
    const
    continue
    default
    do
    double
    else
    enum
    extends
    final
    finally
    float
    for
    goto
    if
    implements
    import
    instanceof
    int
    interface
    long
    native
    new
    package
    private
    protected
    public
    return
    strictfp
    short
    static
    super
    switch
    synchronized
    this
    throw
    throws
    transient
    try
    void
    volatile
    while
    关键字
    含义
    abstract
    表明类或者成员方法具有抽象属性
    assert
    断言,用来进行程序调试
    boolean
    基本数据类型之一,声明布尔类型的关键字
    break
    提前跳出一个块
    byte
    基本数据类型之一,字节类型
    case
    用在switch语句之中,表示其中的一个分支
    catch
    用在异常处理中,用来捕捉异常
    char
    基本数据类型之一,字符类型
    class
    声明一个类
    const
    保留关键字,没有具体含义
    continue
    回到一个块的开始处
    default
    默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现
    do
    用在do-while循环结构中
    double
    基本数据类型之一,双精度浮点数类型
    else
    用在条件语句中,表明当条件不成立时的分支
    enum
    枚举
    extends
    表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口
    final
    用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量
    finally
    用于处理异常情况,用来声明一个基本肯定会被执行到的语句块
    float
    基本数据类型之一,单精度浮点数类型
    for
    一种循环结构的引导词
    goto
    保留关键字,没有具体含义
    if
    条件语句的引导词
    implements
    表明一个类实现了给定的接口
    import
    表明要访问指定的类或包
    instanceof
    用来测试一个对象是否是指定类型的实例对象
    int
    基本数据类型之一,整数类型
    interface
    接口
    long
    基本数据类型之一,长整数类型
    native
    用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
    new
    用来创建新实例对象
    package
    private
    一种访问控制方式:私用模式
    protected
    一种访问控制方式:保护模式
    public
    一种访问控制方式:共用模式
    return
    从成员方法中返回数据
    short
    基本数据类型之一,短整数类型
    static
    表明具有静态属性
    strictfp
    用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
    super
    表明当前对象的父类型的引用或者父类型的构造方法
    switch
    分支语句结构的引导词
    synchronized
    表明一段代码需要同步执行
    this
    指向当前实例对象的引用
    throw
    抛出一个异常
    throws
    声明在当前定义的成员方法中所有需要抛出的异常
    transient
    声明不用序列化的成员域
    try
    尝试一个可能抛出异常的程序块
    void
    声明当前成员方法没有返回值
    volatile
    表明两个或者多个变量必须同步地发生变化
    while
    用在循环结构中
    关键字不需要死记硬背,当年慢慢了解了Java,关键字你就会慢慢都认识的。

    三、基本数据类型

    Java中的数据类型分为:1.基本数据类型  2.引用数据类型

    1、基本数据类型

    摘抄自:https://www.runoob.com/java/java-basic-datatypes.html

    Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

    byte:

    • byte 数据类型是8位即1个字节、有符号的,以二进制补码表示的整数;
    • 最小值是 -128(-2^7);
    • 最大值是 127(2^7-1);
    • 默认值是 0;
    • byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;
    • 例子:byte a = 100,byte b = -50。

    short:

    • short 数据类型是16位即2个字节、有符号的以二进制补码表示的整数
    • 最小值是 -32768(-2^15);
    • 最大值是 32767(2^15 - 1);
    • Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
    • 默认值是 0;
    • 例子:short s = 1000,short r = -20000。

    int:

    • int 数据类型是32位即4个字节、有符号的以二进制补码表示的整数;
    • 最小值是 -2,147,483,648(-2^31);
    • 最大值是 2,147,483,647(2^31 - 1);
    • 一般地整型变量默认为 int 类型;
    • 默认值是 0 ;
    • 例子:int a = 100000, int b = -200000。

    long:

    • long 数据类型是64位即8个字节、有符号的以二进制补码表示的整数;
    • 最小值是 -9,223,372,036,854,775,808(-2^63);
    • 最大值是 9,223,372,036,854,775,807(2^63 -1);
    • 这种类型主要使用在需要比较大整数的系统上;
    • 默认值是 0L;
    • 例子: long a = 100000L,long b = -200000L。
      "L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。

    float:

    • float 数据类型是单精度、32位即4个字节、符合IEEE 754标准的浮点数;
    • float 在储存大型浮点数组的时候可节省内存空间;
    • 默认值是 0.0f;
    • 浮点数不能用来表示精确的值,如货币;
    • 例子:float f1 = 234.5f。

    double:

    • double 数据类型是双精度、64 位即8个字节、符合 IEEE 754 标准的浮点数;
    • 浮点数的默认类型为 double 类型;
    • double类型同样不能表示精确的值,如货币;
    • 默认值是 0.0d;
    • 例子:

      double   d1  = 7D ;
      double   d2  = 7.; 
      double   d3  =  8.0; 
      double   d4  =  8.D; 
      double   d5  =  12.9867;

      7 是一个 int 字面量,而 7D,7. 和 8.0 是 double 字面量。

    boolean:

    • boolean数据类型表示一位的信息;
    • 只有两个取值:true 和 false;
    • 这种类型只作为一种标志来记录 true/false 情况;
    • 默认值是 false;
    • 例子:boolean one = true。

    char:

    • char 类型是一个单一的 16 位 Unicode 字符;
    • 最小值是 \u0000(十进制等效值为 0);
    • 最大值是 \uffff(即为 65535);
    • char 数据类型可以储存任何字符;
    • 例子:char letter = 'A';。

    对于数值类型的基本类型的取值范围,我们无需强制去记忆,因为它们的值都已经以常量的形式定义在对应的包装类中了。请看下面的例子:

    public class PrimitiveTypeTest {  
        public static void main(String[] args) {  
            // byte  
            System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);  
            System.out.println("包装类:java.lang.Byte");  
            System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  
            System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  
            System.out.println();  
      
            // short  
            System.out.println("基本类型:short 二进制位数:" + Short.SIZE);  
            System.out.println("包装类:java.lang.Short");  
            System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);  
            System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);  
            System.out.println();  
      
            // int  
            System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);  
            System.out.println("包装类:java.lang.Integer");  
            System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);  
            System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);  
            System.out.println();  
      
            // long  
            System.out.println("基本类型:long 二进制位数:" + Long.SIZE);  
            System.out.println("包装类:java.lang.Long");  
            System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);  
            System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);  
            System.out.println();  
      
            // float  
            System.out.println("基本类型:float 二进制位数:" + Float.SIZE);  
            System.out.println("包装类:java.lang.Float");  
            System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);  
            System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);  
            System.out.println();  
      
            // double  
            System.out.println("基本类型:double 二进制位数:" + Double.SIZE);  
            System.out.println("包装类:java.lang.Double");  
            System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);  
            System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);  
            System.out.println();  
      
            // char  
            System.out.println("基本类型:char 二进制位数:" + Character.SIZE);  
            System.out.println("包装类:java.lang.Character");  
            // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台  
            System.out.println("最小值:Character.MIN_VALUE="  
                    + (int) Character.MIN_VALUE);  
            // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台  
            System.out.println("最大值:Character.MAX_VALUE="  
                    + (int) Character.MAX_VALUE);  
        }  
    }
  • 相关阅读:
    计算机的基本存储单位
    挖坑
    HEOI2017 游记
    bzoj4815 [Cqoi2017]小Q的表格
    bzoj4817 [Sdoi2017]树点涂色
    hdu5824 graph
    4.5&4.7联考题解
    高飞
    无题
    51Nod 算法马拉松23 开黑记
  • 原文地址:https://www.cnblogs.com/Zzbj/p/16513185.html
Copyright © 2020-2023  润新知