作为JAVA开发工程师,关于变量的基本常识你都知道吗

变量是开发过程当中基本可以说是必备的,那么对于他的一些基本常识您是否真正掌握牢固呢?本篇主要详细讲解变量的小常识,需要的朋友们下面随着小编来一起学习学习吧

一、什么是变量?

变量本质上来说是内存中的一块空间,变量有四个基本属性:变量名,数据类型,存储单元和变量值

变量名:合法的标识符
数据类型:可以是基本类型也可以是引用类型
存储单元:存储单元大小是由数据类型决定的,如:int 为 4 个字节 32 位
变量值:在存储单元中放的就是变量值(如果是基本类型放的就是具体值,如果是
引用类型放的是内存地址,如果 null,表示不指向任何对象)

准确来说就是由三部分组成:数据类型、名称、字面值(数据)

变量的声明格式:类型 变量名;

声明和赋值是可以在一起来完成的。
int i = 0;

二、数据类型的作用?

不同的数据有不同的类型,不同的数据类型底层会分配不同大小的空间。
数据类型是指导程序在运行阶段应该分配多大的内存空间。

JAVA数据类型分为8种:byte、short、int、long、float、double、char、boolean

三、变量的作用?

他就类似于宾馆,我可以根据房间名称快速拿到入住客户信息,并且可以达到多处使用的效果,这个人不住了,我还可以让别人住,而并不用去重新盖一间屋子。

直白的说 一次声明多次使用 的效果。可以随意更改变量的值。

在这里插入图片描述

四、关于变量的作用域

作用域可能有些初学Java者对这个词的定义并不是很明确,说白了就是能用到他的地方我们称为作用域,就比如垃圾桶他的作用域就是丢垃圾,别无它用。

变量的作用域就是描述变量的有效范围,在什么范围内可以用这个变量。这里我们只需要记住一句话,出了大括号就不认识了

这里我在主方法之外的另一个方法定义了一个变量,在主方法当中是无法使用的,这里我们会发现他连编译阶段都是报错的更别谈运行期间了。

五、关于变量的分类

根据变量的位置分为了两种,一种是局部变量,另一种是成员变量

局部变量:在方法体当中声明的变量叫做局部变量
成员变量:在方法体外(类之内)声明的变量叫做成员变量

在这段代码当中age就是成员,i是局部

六、声明变量需要注意的

1、作用域之间命名问题

在同一个作用域当中,变量名不能重复,但是变量可以重新赋值
在不同的作用域当中,变量名是可以相同的。

这里可以看出我定义了两个名称相同的变量,一个是成员变量,一个是局部变量,他依然可以正常运行。

2、变量初始化问题

java中的变量必须先声明,再赋值,才能访问。

以下情况是会报错的,运行报的错就是指没有初始化,可能对于一些初学者经常会听到初始化容器,各种初始化,对初始化定义并不是很标准,没有初始化说白了就是并没有在内存当中开辟空间,所以你并不能用他。

3、一行声明多个

变量他是允许声明多个的,但是需要注意的是他赋值只会赋值最后一个变量,以下列代码为例:

可以看出声明的时候并没有报错,而输出a的时候报错了,是因为他并没有初始化,而输出c却可以。

七、JAVA就近原则

Java代码当中遵循了从上到下的执行原则,并且他遵循了就近原则,在变量当中也可以提现出来。

从这里看出来他输出的并不是static声明的变量,这就是他的就近原则。



八、什么是常量

与变量不同,在程序运行过程中一直不回改变的量称为常量。常量在整个程序中只能被赋值一次,如果常量被多次赋值,则会发生编译错误。
在java中声明一个常量,除了要指定数据类型外,还需要通过final关键字进行限定。

声明常量,并给常量赋值,代码如下:

final double PI = 3.1415926;

九、难点疑答

Java中变量一定要初始化吗?

Java中变量包括成员变量和局部变量,其中成员变量声明之后,不论是否对其初始化值,Java虚拟机都会对其赋值默认值,例如int默认值为0.局部变量不会对其赋值默认值,这时候我们就必须得初始化了。

变量与常量的区别

常量就是在程序运行期间不能被修改的量,在Java中用final定义常量,且常量一般使用大写字母。而变量的值在程序运行期间允许被改变,使用前必须赋值或初始化,且被存放在堆或栈当中。堆栈是一种数据项按序排列的数据结构,只能在一端对数据项进行插入和删除。

猜你喜欢

转载自blog.csdn.net/weixin_43888891/article/details/111828828