首页 > 编程语言 >重学Java-第四章 Java变量

重学Java-第四章 Java变量

时间:2023-02-15 11:56:11浏览次数:69  
标签:重学 Java 变量 int age 声明 第四章 常量

4.1 什么是变量

​ 在程序设计中,变量是指一个包含值的存储地址以及对应的符号名称。从定义上来看,变量大概可以分为两部分:变量的名字和变量的值,可通过变量来访问变量值。简单来说,变量就是存储数据的载体。对于Java而言,Java是一种强类型的语言,因此变量都必须有一个类型,在Java代码中,变量是这样的:

// =左侧的age是变量名,右侧的22是变量值
int age = 22;

4.2 创建变量

​ 在Java语言中,需要做两件事才能创建一个变量:

  • 给变量起一个名字

  • 定义变量的数据类型

​ 创建变量的过程也叫声明变量,声明变量的语法如下:

DataType 变量名

​ 示例如下:

 int age;
int number;
char c;

4.3 给变量赋值

​ 声明变量告诉了编译器变量的数据类型,数据类型决定了变量中可以存放什么,不能存放什么,上述的变量age为int类型,只能存放整数。一旦声明了一个变量,就可以使用赋值语句为其赋值,如下:

int age;
age = 20;

​ 可以将声明和赋值合并成一条语句,如下:

int age = 20;

​ 为了精简语法,可以在一条语句中将多个变量的声明进行分组:

int a = 1, b = 2;

​ 在作用域范围内,变量的值可以随时访问或重新赋值

class PrintVariable {
    public static void main(String[] args) {
        int a = 20;
    	System.out.println("修改前变量a=" + a);
    	// 将变量a重新赋值为100
    	a = 100;
    	System.out.println("修改后变量a=" + a);
    }
}

4.4 变量命名规则

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

  • 变量的名称可以是任何合法的标识符,以字母,美元符号 $或下划线 _开头。但是,按照约定俗成,变量应始终以字母开头,不推荐使用美元符号和下划线开头;
  • 开头后续的字符可以是字母、数字、美元符号或下划线。为变量选择名称时,推荐使用完整的英文单词,不推荐使用单词缩写,更不要使用中文拼音。这样做有利于代码的阅读和理解。另外请牢记,选择的名称不能是关键字保留字
  • 变量命名区分大小写
  • 变量命名应采用小驼峰命名法。所谓小驼峰命名法,就是如果你选择的名称只包含一个单词,那么用全部小写字母拼写该单词;如果名称包含多个单词,请将第二个单词起的每个单词的第一个字母都大写;
  • 如果变量存储了一个常量值,要将每个字母大写并用下划线字符分隔每个单词。比如static final int MAX_NUM = 100。按照约定俗成,除了常量命名的情况,下划线字符永远不会在其他地方使用。

​ 实例如下:

int $a;
int _b;
int age;	//3个变量的声明都是合法的,但是根据约定俗成,不推荐 $a这种以美元符号开头、_b这种以下划线开头的命名方式。

// 声明姓和名变量
String firstName;
String lastname;
//上面声明了两个变量 firstName和 lastname,由于它们都是由两个单词组成,按照小驼峰命名法的约定俗成:第2行 lastname 变量名由两个英文单词组成,因此推荐改为 lastName。

4.5 变量的分类

Java 语言定义了以下4 种变量

  • 实例变量instanceVariable

​ 实例变量在类范围内声明。声明时不使用 static关键字修饰,因此也称为非静态字段

实例变量用于存储对象的状态,它的值对于类的每个实例都是唯一的,每个对象都拥有自己的变量副本。只要相应的对象存在于内存中,它就占用着存储空间。

  • 类变量classVariable

​ 类变量在类范围内使用 static关键字修饰,因此类变量又被称为静态字段、静态变量

static修饰符告诉编译器,无论类被实例化多少次,类变量始终只有一个变量副本。只要类被加载到内存中,它就会存在。

​ 另外,类变量可以被声明为常量,通过使用 final关键字以表示变量永远不会改变。例如:public static final NAME = "zhangsan",这里的 NAME就是不会改变的常量。再次提醒,在常量的命名规范中,要将字母全部大写。

  • 局部变量localVariable

​ 局部变量是在方法范围内被声明和使用的。它们没有任何关键字修饰,可以根据变量声明的位置来认定局部变量(即方法的左花括号和右花括号之间),因此,局部变量只可以对声明它们的方法可见。方法返回后,它们将被销毁。

  • 参数parameterargs

​ 参数是用于传递给方法签名的变量(例如入口方法 main中的 args),它们可以在方法中的任何位置被调用。在方法执行的期间位于内存中,方法返回后被销毁。

4.6 常量

​ 常量是恒常不变的量。可以将常量理解成一种特殊的变量。与变量不同的是,一旦它被赋值后,在程序的运行过程中不允许被改变。常量使用 final关键字修饰:

final DataType 常量名 = 常量值

Tips:常量的命名规范与普通变量有所不同,要将每个字母大写并用下划线字符分隔每个单词。

标签:重学,Java,变量,int,age,声明,第四章,常量
From: https://www.cnblogs.com/XQ-Yang/p/17122311.html

相关文章

  • 重学Java-第五章 Java数据类型
    5.1概述​ Java语言的数据类型可以分为基本数据类型(primitivedatatype)和引用型数据类型(referencedatatype)5.2基本数据类型5.2.1整数类型​ Java语言提供了......
  • java 字符串如何直接转LocalDateTime?
    1.情景展示在实际开发过程中,可能会遇到将前端传的日期格式转成LocalDateTime插入到数据库的情况,如何将日期转成LocalDateTime呢?2.原因分析在Java8中,日期类不同于以......
  • java 文件File与byte[]数组相互转换的两种方式
     1.文件转byte[]方式一:文件输入流Filefile=newFile("C:\\Users\\Marydon\\Desktop\\个人信用报告.pdf");try{FileInputStreamfis=newFileInputStream(file);......
  • JavaScript 中 ?. 和 ?? 分别是什么?
    ?.和??是JavaScript中的两个新操作符,分别是可选链操作符(optionalchainingoperator)和空值合并操作符(nullishcoalescingoperator)。?.操作符?.可选链操作符用于......
  • java json对象转json字符串(带转义符)(json对象嵌套json字符串)
    1.情景展示如上图所示,这一个标准的json字符串,双引号需要使用反斜杠\进行转义,一般情况下,我们是用不到这种json字符串的,在java中,json字符串的通常表现形式是这种:......
  • java 实体类Bean与Map互相转化
     1.情景展示java对象与Map之间进行相互转换,如何实现? 2.分析通过org.apache.commons.beanutils.BeanUtils类来实现所需jar包<dependency><groupId>com......
  • Java 枚举类转json对象
     1.情景展示 如上图所示,我想要将枚举类转换成json对象,key对应属性名称,value对应属性值,效果如下:{"IvcVoucherCode":"200","IvcVoucherStatus":"票据模板下载成功"}......
  • java8 Lambda表达式遍历并移除元素,报错:ConcurrentModificationException的解决办法
     1.情景展示已知json对象MainExt需要把值为空数组的key移除掉,下面是执行代码执行结果报错:java.util.ConcurrentModificationException 2.原因分析大致过......
  • Javase基础-day9 ATM系统
    ATM系统功能实战系统准备、首页设计系统准备内容分析:①每个用户的账户信息都是一个对象,需要提供账户类。②需要准备一个容器,用于存储系统全部账户对象信息。③首页只......
  • Java Day 5
    二维数组声明:数组类型【】【】 数组名;如何创建二维数组对象及初始化动态初始化1.数组名=new元素的数据类型[行长度][每一行的列长度];  每一行的列数相同2.......