首页 > 编程语言 >Java(day08):变量、常量及其作用域

Java(day08):变量、常量及其作用域

时间:2023-09-09 10:02:47浏览次数:49  
标签:10 day08 Java 变量 作用域 number message 常量

前言

Java 是一种面向对象编程语言,它通过变量和常量来处理数据类型。本文将介绍 Java 中的变量、常量及其作用域以及如何使用它们。

摘要

本文将介绍 Java 中的变量、常量及其作用域。我们将讨论变量和常量的含义、如何定义和使用它们,以及作用域的概念和限制。我们还将提供代码示例和测试用例来帮助您理解这些概念。

内容

变量

Java 变量是用于存储数据值的容器。变量可以是不同的数据类型,如整数、浮点数、布尔值等。在 Java 中,变量必须先声明,然后才能使用。变量的声明通常包括类型和名称。

int number;  // 声明一个整数类型的变量
number = 10; // 定义一个整数为 10 的变量

Java 中,可以在声明变量的同时进行初始化:

int number = 10;  // 声明一个整数为 10 的变量

变量还可以通过赋值来更新:

number = 20; // 更新变量的值

变量名必须符合 Java 的命名规则,只能包含字母、数字、下划线和美元符号,并且不能以数字开头。变量名也应该具有描述性,以便在代码中易于理解。

常量

Java 常量是一个固定值,一旦声明,其值就无法更改。常量可用于存储不希望更改的信息,如数学常数和程序特征。

在 Java 中,常量通常使用关键字 final 来声明,常量的名称通常使用大写字母。例如:

final int MAX_NUMBER = 100; // 声明一个名称为 MAX_NUMBER 的常量,值为 100

定义常量时必须先初始化,而且初始化后就不能更改。如果尝试更改常量的值,Java 编译器将会发出错误提示。

作用域

在 Java 中,每个变量都有其作用域,即变量的可访问性。在变量声明后,可以在同一代码块中或更小的代码块中使用该变量。在外部代码块无法访问内部代码块中的变量。

以下是代码块的示例,其中展示了作用域的概念:

public static void main(String[] args) {
    int number = 10; // 声明一个整数类型的变量
    if (number == 10) { // 在 if 代码块中声明一个字符串类型的变量
        String message = "Number is equal to 10!"; // 声明一个字符串类型的变量
        System.out.println(message); // 输出 message 的值
    }
    // 在 if 代码块之外,无法访问 message 变量
    // System.out.println(message); // 编译错误
}

在以上示例代码中,number 变量的作用域是整个 main 方法。message 变量的作用域是 if 代码块内部,无法在外部访问。

代码示例

定义变量

以下是定义一个整数变量的示例:

int number = 10; // 声明一个整数为 10 的变量

定义常量

以下是定义一个常量的示例:

final int MAX_NUMBER = 100; // 声明一个名称为 MAX_NUMBER 的常量,值为 100

作用域示例

以下示例演示了变量的作用域:

public static void main(String[] args) {
    int number = 10; // 声明一个整数类型的变量
    if (number == 10) { // 在 if 代码块中声明一个字符串类型的变量
        String message = "Number is equal to 10!"; // 声明一个字符串类型的变量
        System.out.println(message); // 输出 message 的值
    }
    // 在 if 代码块之外,无法访问 message 变量
    // System.out.println(message); // 编译错误
}

代码方法介绍

本文的代码示例已经涵盖了变量、常量和作用域的基本使用。如果您需要更多的代码实现,您可以查看 Java 官方文档。

测试用例

以下是一些测试用例,可用于验证变量和常量的使用情况。

变量测试用例

@Test
public void testVariable() {
    int number = 10; // 定义一个整数变量
    assertEquals(10, number); // 检查变量值是否为 10

    number = 20; // 更新变量的值
    assertEquals(20, number); // 检查更新后的变量值是否为 20
}

常量测试用例

@Test
public void testConstant() {
    final int MAX_NUMBER = 100; // 定义一个常量
    assertEquals(100, MAX_NUMBER); // 检查常量值是否为 100

    // MAX_NUMBER = 200; // 编译错误,常量不能更改
}

作用域测试用例

@Test
public void testScope() {
    int number = 10; // 定义一个整数变量
    if (number == 10) { // 在 if 代码块中声明一个字符串变量
        String message = "Number is equal to 10!"; // 声明一个字符串变量
        assertEquals("Number is equal to 10!", message); // 检查字符串值是否正确
    }

    // assertFalse(message.equals("Number is equal to 10!")); // 编译错误,无法访问 message 变量
}

全文小结

本文介绍了 Java 中的变量、常量及其作用域。我们学习了如何定义和使用变量、常量,并了解了作用域的概念和限制。我们还提供了代码示例和测试用例来帮助您理解这些概念。

标签:10,day08,Java,变量,作用域,number,message,常量
From: https://blog.51cto.com/u_16017663/7417615

相关文章

  • Java从入门到精通-数组(二)
    4.数组的基本操作数组的基本操作包括遍历数组、填充替换数组元素、对数组进行排序、复制数组以及查询数组中的元素。•4.1遍历数组遍历数组是访问数组中所有元素的过程,通常使用循环完成。使用 for 循环遍历数组:int[]numbers={1,2,3,4,5};for(inti=0;i<numbers.l......
  • 简单梳理java中的类加载
    一、类加载器简介java中自带的类加载器可以分为根类加载器(BootStrapclassloader),扩展类加载器,应用类加载器,这三个都不是用java语言实现的。其中根类加载器和扩展类加载器用来加载java自带的一些类,而应用类加载器用来加载我们自己写的java类编译后的class文件,也就是classpath......
  • Java基础知识
    一、基础知识注释的作用解释说明程序,提高程序的阅读性帮助我们调试程序Java语言最基本的单位的类,所以我们首先要定义一个类Java程序要想能够独立运行,必须要有主方法如果想要Java程序有输出,必须要有输出语句定义类的格式:classclassname{......
  • java8学习
    java8安装与环境变量配置chocochoco官网安装命令:chocoinstalljdk8自动配置环境变量IDEA官网安装java语法注:由于默认具有cpp基础,所以和cpp极为相似的点我不会提及。enum枚举publicenumPlayerType{TENNIS("网球"),FOOTBALL("足球"),//常量FOOTBALL......
  • 使用 idea debug 远程 java 进程
    线上环境使用的jdk版本为1.8,对应的java启动命令java-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50050-jarxxxx.jar注意服务器需要开放对应的50050tcp端口idea配置:Run->EditConfiguration->+->RemoteJVMDebug->填写ip端口->启......
  • Java学习_004 数据输入:案例2
    需求:三个和尚的身高需要手动输入,请用程序实现这三个和尚的最高身高。importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);intheight1=sc.nextInt();intheight2......
  • Java学习_003 数据输入
    1.数据输入1.2Scanner使用的基本步骤(1)导包importjava.util.Scanner;(2)创建对象Scannersc=newScanner(System.in);(3)接受数据inti=sc.nextInt();1.3实例importjava.util.Scanner;publicclassMain{pub......
  • Java学习_002 案例2:三个和尚
    需求:一座寺庙里住着三个和尚,已知他们的身高分别为150cm、210cm、165cm,请用程序实现获取这三个和尚的最高身高。1publicclassMain{2publicstaticvoidmain(String[]args){3intheight1=150;4intheight2=210;5intheight3......
  • Java对象创建过程,类的生命周期,Java的对象结构
    一、Java对象创建过程1、JVM遇到一条新建对象的指令时,首先去检查这个指令的参数是否能在常量池中定义到一个类的符号引用,然后加载这个类;2、为对象分配内存。一种办法时“指针碰撞”,一种办法是“空闲列表”,最终常用的办法是“本地线程缓冲分配”;3、将除对象头外的对象内存空间初始化......
  • Java学习002__案例1:两只老虎
    需求:动物园里有两只老虎,已知两只老虎的体重分别为180kg、200kg,请用程序实现判断两只老虎体重是否相同。1publicclassMain{2publicstaticvoidmain(String[]args){3intweight1=180;4intweight2=200;5//使用三目运算符实......