JavaSE—1.标识符_关键.字_数据类型

标识符

  • Java对各种变量、方法和类等要素命名时使用的字符序列称为标识符。

    • 凡是自己可以起名字的地方都叫标识符,都遵循标识符的规则
  • Java标识符命名规则:

    • 标识符由字母、下划线“_”、美元“$”或数字组成。
    • 标识符应以字母、下划线、美元符开头。
    • Java标识符大小写敏感,长度无限制。
  • 约定俗成:Java标识符选取应注意**“见名知意**”且不能与Java语言的关键字重名

    合法的标识符 不合法的标识符
    HelloWorld class
    DataClass DataClass#
    _983 98.3
    $bS5_c7 Hell World

关键字

  • Java中一些赋以特定的含义,用做专门用途的字符串称为关键字(keyword)。
    • 大多数编辑器会将关键字用特殊方式标出
  • 所有Java关键字都是小写英文
  • goto和const虽然从未使用,当也作为Java关键字保留

常量

  • Java的常量值用字符串表示,区分为不同的数据类型。
    • 如整型常量:123
    • 实型常量:3.14
    • 字符常量:‘a’
    • 逻辑常量:true、false
    • 字符串常量:“helloworld”
  • 注意:区分字符常量与字符串常量
  • 注意:“常量”这个名字还可以用在另外其他环境中表示不可变的变量
    • final关键字

Java变量

  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
  • Java程序中每一个变量都属于特定的数据类型,在使用前必须对其声明,声明格式为:
    • type varName [=value][{,varName[=value]}]
  • 例如:
    • int i = 100;
    • float f = 12.3f;
    • double d1, d2, d3 = 0.123;
    • String s = "hello";
  • 从本质上讲,变量其实是内存中的一小块区域,使用变量名来访问这块区域,因此,每一个变量使用前必须先申请(声明),然后必须进行赋值(填充内容),才能使用。

程序执行过程

在这里插入图片描述

  • code segment:代码区
  • data segment:静态变量字符串常量
  • stack(栈):存放局部变量
  • heap(堆):存放new出来的东西

Java变量分类

  • 按被声明的位置划分:
    • 局部变量:方法或语句块内部定义的变量
    • 成员变量:方法外部、类的内部定义的变量
    • 注意:类外面(与类对应的大括号外面)不能有变量的声明
  • 按所属的数据类型划分:
    • 基本数据类型变量
    • 引用数据类型变量

Java局部变量与成员变量

  • 方法体内部声明的变量(包括形参)称为局部变量

    • 方法体内部是指与方法对应的大括号内部
  • 在方法体外,类体内声明的变量称为成员变量

    public void method(){
        int i;
        int j = i + 5;//编译出错,变量i还未被初始化
        double d = 3.14;
        Dog dog;
        dog = new Dog(22, 7, 74);
    }
    
  • 作用域:在该大括号里声明的变量,出了该大括号,则该变量没有人认识

Java数据类型的划分

数据类型

  • 基本数据类型(4类8种基本数据类型)
    • 数值型
      • 整数类型(byte、short、int、long)
      • 浮点类型(float、double)
    • 字符型(char)
    • 布尔型(boolean)
  • 引用数据类型
    • 类(class)
    • 接口(interface)
    • 数组

逻辑型Boolean

  • boolean类型适用于逻辑运算,一般用于程序流程控制

  • boolean类型数据值允许取值true或false,不可以0或非0的整数替代true和false,这点和c语言不同

  • 用法举例:

    boolean flag;
    flag = true;
    if(flag){
        //do something
    }
    

字符型char

  • char型数据用来表示通常意义上“字符”。
  • 字符常量为用单括号括起来的单个字符,例如:
    • char eChar = 'a';
    • char cChar = '中';
  • Java字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示,例如:
    • char c1 = '\u0061';
    • 注:Unicode是全球语言统一编码
  • Java语言中还允许使用转义字符“\”来将其后的字符转变成其他的含义,例如:
    • char c2 = '\n';
      • //’\n’代表换行符
  • 补充:2进制、10进制、16进制之间的转换
    • 1101 — 1 * 1 + 0 * 2 + 1 * 4 + 1 * 8
    • 13 — 1 + 4 + 8 - 1101
    • 1101 — D

整数类型

  • Java各整数类型有固定的表数范围和字段长度,其不受具体操作系统的影响,以保证Java程序的可移植性。

  • Java语言整型常量的三种表示形式:

    • 十进制整数,如:12,-314,0.
    • 八进制整数,要求以0开头,如012。
    • 十六进制数,要求以0x或0X开头,如0x12.
  • Java语言的整型常量默认为int型,声明long型常量可以后加“l”或“L”,如:

    • int i1 = 600;//正确
    • long l1 = 888888888888L;//必须加l否则会出错
    类型 占用存储空间 表数范围
    byte 1字节 -128~127
    short 2字节 -215~215-1
    int 4字节 -231~231-1
    long 8字节 -263~263-1

浮点类型

  • 与整数类型类似,Java浮点类型有固定的表数范围和字段长度,不受平台影响。

  • Java浮点类型常量有两种表示形式

    • 十进制数形式,例如:3.14,314.0,.314
    • 科学记数法形式,如3.14e2,3.14E2,100E-2
  • Java浮点型常量默认为double型,如要声明一个常量为float型,则需要在数字后面加f或F,如:

    • double d = 12345.6
    • float f = 12.3f;//必须加f否则出错
  • 下面列出Java各种浮点类型

    类型 占用存储空间 表数范围
    float 4字节 -3.403E38~3.403E38
    double 8字节 -1.798E308~1.798E308

猜你喜欢

转载自blog.csdn.net/qq_32661327/article/details/83034759