从零开始学Java02-变量与常量

java变量与常量


大纲

  • 标识符
  • 关键字
  • 变量
  • 数据类型
  • 类型转换
  • 常量

标识符

  1. 必须由字母、数字、下划线(_)和美元符($)组成
  2. 首字母只能是字母、下划线(_)和美元符($),不能是数字
  3. 标识符严格区分大小写
  4. 标识符能是Java关键字和保留字
  5. 标识符的命名最好能反应出其作用

关键字

  • 关键字:Java关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。
  • 保留字:保留字(reserved word),指在高级语言中已经定义过的字,使用者不能再将这些字作为变量名或过程名使用。
abstract boolean break byte case catch
char class continue default do double
else extends false final finally float
for if implements import native int
interface long instanceof new null package
private protected public return short static
super switch synchronized this throw throws
transient true try void volatile while

abstract : 抽象 -》将某个类或方法作为抽象类
boolean :布尔值 ->用于存储true和false
byte:字节型 -》 存储8位带符号的二进制数
case:选择结构中的某一项值 -》表示选择结构中的某一项值,搭配switch使用
catch:捕捉 -》捕捉程序中出现的异常,搭配try使用
char:字符型 -》表示该变量是字符型
class:类 -》定义类
continue:执行下一次循环 -》在循环中,跳过当前循环,执行下一循环
default:默认执行 -》如果case没有匹配的值,执行default中的代码;在接口中修饰具体实现方法
do:执行 -》与while搭配,形式:do-while
double:双精度浮点数 -》数据类型是双精度、64 位、符合IEEE 754标准的浮点数
else:其他 -》如果if条件不匹配,执行else中的语句,搭配 if 使用
extends:继承-》继承父类函数,可以使用或重写父类函数中的方法
false:否 -》表示否,相当于计算机语言中的“0”
final:最终 -》修饰某一方法或变量唯一,不能修改,重写等
finally:最终执行 -》在try-case-finally中,表示最终执行
float:单精度浮点数 - 》存储单精度、32位的浮点数
for:循环结构中的一种 -》 用于循环
if:选择结构中的一种 - 》用于判断,搭配else使用
implements:继承 -》用于继承接口
import:引入 -》引入某个jar包等
native: -》用于调用java之外的代码,或者调用系统底层函数
int: 整型-》存储32位、有符号的以二进制补码表示的整数
interface:接口 -》表示某个类是接口(可以这样理解)
long:长整型 -》存储 64 位、有符号的以二进制补码表示的整数
instanceof:双目运算符 -》测试一个对象是否为一个类的实例
new:初始化 -》用于初始化某对象等
null:空值 -》表示为空
package:包 -》表示包
private:私有 -》表示某函数或变量为该函数自有,其他无法调用
protected:受保护类型 -》表示只有继承类、本类、同一包类可调用
public:公有 -》相比上个,所有都可以调用
return:返回 -》返回某种值,对象等
short:短整型 -》存储 16 位、有符号的以二进制补码表示的整数
static:静态 -》表示该变量、函数等在程序开始就加载到内存,且可以直接调用,不需要初始化
super:超类 -》父类的引用,调用父类的构造函数
switch:选择结构一种 - 》搭配case使用
synchronized:线程同步 - 》实现线程同步
this: -》当前对象的引用
throw:抛出异常 -》抛出异常
throws:声明异常 -》 在方法后面声明出可能出现的异常
transient:反序列化 -》让某些被修饰的成员属性变量不被序列化
true:是 -》相当于计算机语言中的1
void:空类型 -》表示该变量为空类型,或者方法中表示返回值为空
volatile: -》让变量每次在使用的时候,都从主存中取
while:循环体结构一种 -》搭配do使用,也可自用

保留字: goto (在Java中会造成逻辑混乱)


变量

什么是变量

数据的临时存放场所

  • 变量的三个元素:
    • 变量类型
    • 变量名
    • 变量值
  • 变量的命名规则:
    • 满足标识符命名规则
    • 符合驼峰法命名规范
    • 尽量简单,做到见名知意
    • 变量名的长度没有限制

类名的命名规则:

  • 满足Pascal命名法规范(首字母大写,单个单词首字母大写)

数据类型

按照类型划分

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

按照范围划分

  • 类级
  • 对象实例级
  • 方法级(局部变量)
  • 块级

基本数据类型

数据类型 说 明 字 节
byte 字节型 1
short 短整型 2
int 整形 4
long 长整型 8
float 单精度浮点数 4
double 双精度浮点数 8
char 字符型 2
boolean 布尔型 1

变量值

变量值可以是字面值或另外一个变量。

字面值

  • 整形字面值

    Java中有三种表示整数的方法:十进制、八进制、十六进制。

    • 八进制以0开头包括0-7的数字
    • 十六进制以0x或0X开头,包括0-9的数字及字母a-f,A-F。
  • 浮点型字面值

    • 浮点型字面值默认情况下表示double(双精度浮点型)类型,也可以在值后加d或D
    • 如表示float(单精度浮点型),则需要在字面值后面加f或F
  • 字符型字面值

    • 字符型字面值用单引号内的单个字符表示
    • char类型实际上是无符号16位整数类型,取值范围是0-65535
      • ASCII码 美国标准信息交换代码

        基于拉丁字母的一套电脑编码系统
        主要是用于显示现代英语和其他西欧语言
        使用7位或8位二进制数的组合来表示128或256种可能的字符

        • 7位 ---标准ASCII码:大小写字母、标点符号、美式英语中的控制字符等
        • 8位 ---扩展ASCII码:表示特殊符号,外来的字母等。
      • Unicode编码

        称为统一码,万国码,目标是支持世界上所有的字符集。
        unicode表示法,在值前加前缀\u

转义字符

转义字符是一些有特殊意义的字符,用来表示常见的不能显示的字符,如\n表示换行,\r表示回车。

变量声明

格式:[数据类型 变量名];
eg: int n;

赋值

使用赋值运算符(=)进行赋值,将运算符右边的值(字面值或另一个变量)赋给左边的变量
eg: n = 16;

在定义变量的同时给变量赋值,即变量的初始化。


类型转换

  • 类型转换分为自动类型转换和强制类型转换

自动类型转换

又叫隐式类型转换

数据范围小的可以自动转换成大的

自动类型转换

  • ------>可能在转换时出现精度丢失
  • ——>无信息丢失的数据类型转换

强制类型转换

如果A类型的数据表示范围比B类型大,则将A类型的值赋给B类型需要强制类型转换
强制数据类型转换的格式: (数据类型)数值


常量

定义常量,在定义变量格式前加final关键字
常量定义后不可以修改
一般情况下常量名都是大写

posted @ 2020-05-12 21:41  bear339  阅读(110)  评论(0)    收藏  举报