一、前言
记录时间 [2024-04-23]
系列文章简摘:
Java 笔记 01:Java 概述,MarkDown 常用语法整理
Java 笔记 02:Java 开发环境的搭建,IDEA / Notepad++ / JDK 安装及环境配置,编写第一个 Java 程序
Java 笔记 03:Java 基础知识,使用 IDEA 创建 Java 项目、设置注释颜色,以及自动生成 JavaDoc
Java 笔记 04:Java 数据类型基础,数据类型转换,及其相关场景拓展
本文介绍了 Java 编程中变量和常量的相关知识,包括基本概念、使用方式,以及一些变量、方法、类名等的命名规范。
二、变量(Variable)
1. 变量基本概念
在 Java 中,变量是用于存储数据值的容器,变量是可以变化的量。
Java 是一种强类型语言,要求变量具有明确的类型,并且在大多数情况下,不允许类型之间的隐式转换。这意味着不能将一个类型的值直接赋给另一个类型的变量,除非进行显式的类型转换。
同时,Java 是一种静态类型语言,变量的类型在编译时是已知的,并且不能在运行时更改。这意味着在声明变量时必须指定其类型,而且在编译时编译器会检查类型是否匹配。如果类型不匹配,编译会失败。
Java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。在声明 Java 变量时,需要指定变量的类型和名称。
以下是 Java 中变量的一些基本概念:
- 变量类型:在声明变量时必须指定其类型,类型可以是基本类型,也可以是引用类型。例如,整数使用
int
,浮点数使用double
,字符使用char
等。 - 变量名称:变量名称是用于在代码中引用变量的标识符。变量名称应遵循特定的命名规则,必须是合法的标识符,如不能以数字开头,不能使用 Java 关键字等。
- 变量声明:在使用变量之前,需要先声明。声明一个变量包括变量的类型和名称。变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
- 变量初始化:在声明变量时,可以选择初始化变量,这意味着为变量分配一个初始值。
- 局部变量和成员变量:
- 局部变量:局部变量声明在方法、构造函数或块中,并且它们只在声明它们的作用域内可见。
- 成员变量:成员变量声明在类中,但在任何方法、构造函数或块之外。它们属于对象的状态,并且它们的值在整个对象生命周期内保持不变。
- 常量:使用
final
关键字声明的变量是常量,意味着一旦初始化,它们的值就不能更改。 - 变量作用域:变量的作用域定义了变量在代码中的可见性。例如,局部变量的作用域限于声明它们的方法、构造函数或块。
- 变量赋值:在程序执行过程中,可以为变量分配新值。
2. 变量使用方式
Java 中声明变量的方式:
// 不指定变量的初始值
// 数据类型 变量名 = 值;
int age;
double price;
String name;
// 初始化变量
int age = 30;
double price = 19.99;
String name = "yuanyuan";
Java 中修改已有变量的值的方式:
// 在程序执行过程中,可以为变量分配新值
age = 40;
可以使用逗号隔开来声明多个同类型变量:
但是不建议这样使用,注意程序可读性,尽量一个变量一行。
int age1 = 30, age2 = 16;
3. 变量作用域
变量作用域类型
在 Java 中,变量的作用域决定了变量在程序中的可见性和生命周期。以下是 Java 中 3 种主要的变量作用域类型:
- 类变量(静态变量)
- 定义:类变量是在类中定义,但在方法、构造函数或块之外的变量。
- 生命周期:它们的生命周期与类的生命周期相同,即当类加载到内存中时就存在,直到程序结束时才被销毁。
- 访问方式:通过类名访问,例如
ClassName.variableName
。
- 实例变量
- 定义:实例变量是在类中定义的,但在任何方法、构造函数或块之外,并且不使用
static
关键字。 - 生命周期:它们随着对象的创建而创建,并且在对象被销毁时销毁。
- 访问方式:需要通过类的实例或对象来访问。
- 定义:实例变量是在类中定义的,但在任何方法、构造函数或块之外,并且不使用
- 局部变量
- 定义:局部变量是在方法、构造函数或块中定义的变量。
- 生命周期:它们的生命周期仅限于声明它们的方法、构造函数或块。
- 访问方式:只能在声明它们的方法、构造函数或块内部访问。
定义方式
以下是 Java 程序中 3 种主要的变量的定义方式:
public class Variable {
// 类变量是与类关联的变量,它们在类加载时创建,与类的生命周期相同
static int allClicks = 0; // 类变量
/*
实例变量:从属于对象;如果不自行初始化,就是默认值
默认值: 0 0.0 u0000
布尔值:默认是 false
除了基本数据类型,其余默认值都是 null
*/
String str = "hello world"; // 实例变量
public void method() {
/*
局部变量是在方法、构造函数或块中声明的变量
它们的作用域仅限于声明它们的代码块,就是只在 method() 这对 {} 中有用
局部变量必须声明和初始化值
*/
int i = 0; // 局部变量
}
}
使用方式
那这 3 种变量怎么在程序中使用呢?
public class Demo08 {
// 属性:变量
// 类变量 static
static double salary = 2500;
// 实例变量:从属于对象;如果不自行初始化,就是默认值
String name;
int age;
// main 方法
public static void main(String[] args) {
// 局部变量:必须声明和初始化值
int i = 10;
// 局部变量的使用方法
System.out.println(i);
// 实例变量的使用方法: 构造一个对象
// 变量类型 变量名字 = new Demo08();
Demo08 demo08 = new Demo08();
// 查看实例变量 age
System.out.println(demo08.age);
// 查看实例变量 name
System.out.println(demo08.name);
// 类变量的使用方法 static
System.out.println(salary);
}
// 其他方法
public void add() {}
}
三、常量(Constant)
在 Java 中,常量是一个固定不变的值,一旦被初始化(initialize)赋值,其值就不能被修改。使用常量可以提高代码的可读性和维护性,因为它们明确表示了一个固定的值。
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
使用常量可以使代码更加清晰、易于理解,并帮助避免由于意外修改常量值而引发的错误。
1. 声明常量
在 Java 中,使用 final
关键字声明一个常量。final
关键字确保常量的值在初始化后不可更改。
dataType
:常量的数据类型。CONSTANT_NAME
:常量的名称,通常使用大写字母。value
:常量的初始值。
// final dataType CONSTANT_NAME = value;
// final 常量名 = 值;
final double PI = 3.14;
2. 示例
常量在 Java 中声明的方式:
public class ConstantsExample {
// 修饰符,不存在先后顺序 final static...
public static final double PI = 3.14159;
public static final int MAX_SIZE = 100;
public static final String APP_NAME = "MyApp";
}
注意点:
- 不可修改:一旦常量被初始化,其值就不能被修改。
- 作用域:常量的作用域与声明它们的类或代码块相同。
- 命名规范:通常常量的名称使用大写字母,单词之间使用下划线分隔。
3. 常量使用场景
常量通常用于表示不变的值,如数学常数、配置设置、枚举值等。例如,上面的 PI
常量表示数学中的圆周率,而 MAX_SIZE
可表示数组或列表的最大长度。
比如使用上述常量计算圆的面积:
// 计算圆的面积,radius 指半径
double area = ConstantsExample.PI * radius * radius;
四、命名规范
在 Java 编程中,命名规范是一种重要的约定,用于使代码易于阅读、理解和维护。所有变量、方法、类名都要秉持见名知意的要求,以下是一些常见的 Java 命名规范。
1. 变量命名
变量命名使用驼峰命名法(CamelCase),第一个单词的首字母小写,后续每个单词的首字母大写。
例如:
int studentAge;
double totalPrice;
String userName;
2. 常量命名
常量命名使用全部大写字母,单词之间使用下划线 _
分隔。
例如:
final double PI_VALUE = 3.14159;
final int MAX_SIZE = 100;
3. 类和接口命名
类和接口命名使用名词或名词短语,同样使用驼峰命名法,但第一个单词的首字母应大写。
例如:
// 类命名
public class StudentRecord {}
// 接口命名
public interface Shape {}
4. 方法命名
方法命名使用动词或动词短语,同样使用驼峰命名法,第一个单词的首字母小写。
例如:
public void calculateTotalPrice() {}
public String getUserName() {}
5. 包命名和常用缩写词
包命名
包命名使用小写字母,使用域名倒置格式。
例如:
package com.example.myapp;
常用缩写词
常用的缩写词如 XML
、URL
、HTTP
等应全部大写,其他缩写词应当根据其在命名中的位置决定是否大写。
例如:
String xmlData;
String urlString;
五、总结
本文介绍了 Java 编程中变量和常量的相关知识,包括基本概念、使用方式,以及一些变量、方法、类名等的命名规范。
一些参考资料
狂神说 Java 零基础:https://www.bilibili.com/video/BV12J41137hu/
TIOBE 编程语言走势: https://www.tiobe.com/tiobe-index/
Typora 官网:https://www.typoraio.cn/
Oracle 官网:https://www.oracle.com/
Notepad++ 下载地址:https://notepad-plus.en.softonic.com/
IDEA 官网:https://www.jetbrains.com.cn/idea/