Java语言基础(3)——变量(关于声明赋值、作用域以及默认初始值的说明)

本文详细介绍了Java中变量的定义、类型分类、声明与赋值过程,包括基本类型与引用类型的差异,以及变量的作用域和默认初始值。通过示例代码展示了如何声明和初始化不同类型的变量,强调了局部变量必须先初始化再使用的规则。同时,解释了引用类型变量在实例化后的数据空间分配。最后,讨论了变量的作用域,包括局部变量、成员变量、方法参数和异常处理参数。
摘要由CSDN通过智能技术生成

定义:变量是一种与特定类型相关联的存储位置
分类:从语言机制上划分,数据类型分基本类型和引用类型; 相应地,变量类型也分基本类型和引用类型。
根据作用域划分,变量可分为成员变量、局部变量和方法参数,以及catch语句块入口参数(异常处理参数)。

声明和赋值
从以下代码块观察不同类型变量的声明和赋值:

public class Assign {
public static void main(String args[]) {
int x, y;
float z = 3.414f;
double w = 3.1415;
boolean truth = true;
char c;
String str;
String str1 = “bye”;
x = 6;
y = 1000;
c = 'A';
str = “Hello”;
}
}

基本类型变量在声明时,直接分配数据空间,如

int a;
a = 12;

引用类型变量在声明时,不直接分配数据空间,仅仅分配引用空间。只有在经过实例化后,才能开辟数据空间。
例如:

Date today;
today = new Date(); //实例化

过程如下图:
分配引用空间

分配数据空间
引用类型变量之间的赋值:

Date a, b;
a = new Date();
b = a;

过程如下图:
分配引用空间

分配数据空间

赋值:指向同一片数据空间
变量的作用域
局部变量:从声明变量的位置开始, 到包含该变量的代码块结束为止;
类成员变量:至少包括整个类;
方法参数:所在方法的内部;
catch语句块入口参数:catch语句块。

变量的默认初始值
对象的成员变量有默认初始值,由系统自动初始化。
以下是不同类型变量的初始值说明:
(变量类型—— 初始值)
byte—— 0;
short ——0;
int—— 0;
long—— 0L;
float—— 0.0F;
double—— 0.0D;
char—— ‘\u0000’;
boolean—— false;
所有引用类型—— null

局部变量没有默认初始值,必须在使用前手工赋初始值。若局部变量未初始化就使用,编译器报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值