关于Java变量,你得知道这些

简介: 大家好,我是指北君。今天指北君来给大家讲讲Java变量PS:最近是跳槽的高峰期,我连日加班好多天,整理出了包含16000 多道面试题的面试宝典,并且指北君也会持续更新这份面试宝典中的题目,希望它能帮助大家找到自己心仪的工作!

什么是变量?

变量就是初中数学的代数的概念,例如一个简单的方程,x,y都是变量:

y=x^2+1

在Java程序设计中,变量是指一个包含值的存储地址以及对应的符号名称。

从定义上来看,变量大概可分为两部分:变量的名字和变量的值,可通过变量名来访问变量值。简单来说,变量就是存储数据的载体。

对于 Java 语言来讲,Java 是一种强类型的语言,因此变量都必须有一个类型。在 Java 代码中,变量是长这个样子的:

30.png

这其中包含了变量的声明和变量的赋值。其中 int age 表示变量的声明,声明 age 的变量类型为 int类型。age = 22 的过程表示的是变量的赋值。

在Java中,变量分为两种:基本类型的变量和引用类型的变量。

变量命名规范

对于变量的命名,每种编程语言都有自己的规则和约定,Java 语言也不例外。命名变量的规则和约定如下:

  • 变量名必须是一个以字母开头并由字母或数字构成的序列。需要注意,与大多数程序设计语言相比,Java中“字母”和“数字”的范围更大。字母包括'A'~'Z'、'a' ~'z'、'_'、'$'或在某种语言中表示字母的任何 Unicode 字符。
  • 变量名不能使用Java保留字或关键字。
  • 变量命名区分大小写。

局部变量

在Java中, 方法体内声明的变量一般被称为局部变量。该变量只能在该方法内使用,类中的其他方法并不知道。


31.jpg


                                                  举个栗子_举个_栗子表情32.png

其中 a、b、c就是局部变量,它们只能在当前这个 main 的方法中使用。


成员变量

一般来说,成员变量就是在类的内部但在方法体的外部声明的变量。我们再举个例子:



33.png

在示例中,data 就是一个成员变量,通过InstanceVar 的实例 ins 来访问。ins 也是一个变量,它的类型就是InstanceVar,通过 new 操作之后在赋值得来的。


静态变量

在Java中,静态变量是通过 static 关键字指示的。


34.png

我们再来看个例子吧:


35.png


在示例中, data 就是静态变量,通过类名.变量名 进行访问。


常量

在Java中,利用 final关键字指示变量:

36.png

常量在程序运行过程中主要有 2 个作用:

  • 代表常数,便于修改(例如:圆周率的值, final double PI = 3.14 )
  • 增强程序的可读性(例如:常量UP、DOWN 用来代表上和下, final int UP = 0 )

如果我们尝试在代码中修改常量的值:


37.png

编译执行代码,编译器将会报错:

38.png

适当地使用常量可以提高代码的安全性和可维护性。


总结

在本文中,我们学习了什么是变量,变量的命名规范。

Java 中变量有3个种类,分别是:局部变量、成员变量、静态变量。其中变量如果使用了final关键字修饰,就可定义一个不可变的常量。

面试大全包括:包括 Java 集合、JVM、多线程、并发编程、设计模式、SpringBoot、SpringCloud、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、Python、HTML、CSS、Vue、React、JavaScript、Android 大数据、阿里巴巴等大厂面试题等、等技术栈!



相关文章
|
9天前
|
存储 Java
java基础(7)变量以及变量的分类
Java变量是内存中存储数据的基本单元,包含数据类型、名称和字面值。变量的数据类型决定了分配的内存空间大小。变量声明格式为“数据类型 变量名;”,变量名应符合标识符命名规范。变量可以重新赋值,但数据类型需一致。变量可以一行声明多个,作用域决定了变量的可用范围。变量分为局部变量和成员变量,局部变量定义在方法体内,成员变量定义在方法体外、类体内。
23 2
|
26天前
|
存储 Java 开发者
【Java新纪元启航】JDK 22:解锁未命名变量与模式,让代码更简洁,思维更自由!
【9月更文挑战第7天】JDK 22带来的未命名变量与模式匹配的结合,是Java编程语言发展历程中的一个重要里程碑。它不仅简化了代码,提高了开发效率,更重要的是,它激发了我们对Java编程的新思考,让我们有机会以更加自由、更加创造性的方式解决问题。随着Java生态系统的不断演进,我们有理由相信,未来的Java将更加灵活、更加强大,为开发者们提供更加广阔的舞台。让我们携手并进,共同迎接Java新纪元的到来!
48 11
|
2月前
|
Java
【Java基础面试七】、请介绍一下实例变量的默认值
这篇文章介绍了Java中实例变量的默认值:引用数据类型的默认值是null,而基本数据类型的默认值根据其类型分别是0、0L、0.0F、0.0、'\u0000'和false。
【Java基础面试七】、请介绍一下实例变量的默认值
|
29天前
|
存储 Java 程序员
优化Java多线程应用:是创建Thread对象直接调用start()方法?还是用个变量调用?
这篇文章探讨了Java中两种创建和启动线程的方法,并分析了它们的区别。作者建议直接调用 `Thread` 对象的 `start()` 方法,而非保持强引用,以避免内存泄漏、简化线程生命周期管理,并减少不必要的线程控制。文章详细解释了这种方法在使用 `ThreadLocal` 时的优势,并提供了代码示例。作者洛小豆,文章来源于稀土掘金。
|
2月前
|
存储 安全 Java
Java 中的 ThreadLocal 变量
【8月更文挑战第22天】
35 4
|
2月前
|
安全 Java 编译器
Java 中的 volatile 变量
【8月更文挑战第22天】
22 4
|
20天前
|
JavaScript 前端开发 Java
通过JUnit5访问Java静态、私有、保护变量和方法
在《通过Gtest访问C++静态、私有、保护变量和方法》一文中介绍了如何通过Gtest访问C++静态、私有、保护变量和方法,本文介绍如何通过Junit5访问Java静态、私有、保护变量和方法。
18 0
|
2月前
|
存储 Java 测试技术
Java零基础(15) - Java变量
【8月更文挑战第15天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
26 3
|
2月前
|
存储 Java 测试技术
Java零基础教学(14):Java变量详解
【8月更文挑战第14天】Java零基础教学篇,手把手实践教学!
15 2
|
2月前
|
Java 数据安全/隐私保护
03 Java流程控制-分支(if+switch+变量类型)
03 Java流程控制-分支(if+switch+变量类型)
24 5
下一篇
无影云桌面