初识Java (Java语言基础-变量与常量)

本文详细介绍了Java中变量与常量的概念、命名规则及作用范围。解释了变量与常量的区别,包括如何声明和使用它们。此外还讨论了标识符、关键字以及变量的有效范围等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

变量与常量

    在程序执行过程中,其值不能被改变的量称为常量,其值能被改变的量称为变量。

    变量与常量的命名都必须使用合法的标识符。

1.1 标识符和关键字

1.1.1 标识符

    标识符可以理解为一个名字,用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。

    Java语言规定标识符由任意顺序的字母、下划线( _ )、美元符号($)和数字组成,并且第一个字符不能是数字。标识符不能是Java中保留的关键字。

    在Java语言标识符中的字母是区分大小写的。

1.1.2 关键字

    关键字是 Java 语言中已经被赋予特定意义的一些单词,不可以把这些字作为标识符来使用。

Java关键字

abstract

assert

boolean

break

byte

case

catch

char

class

const

continue

default

do

double

else

enum

extends

final

finally

float

for

goto

if

implements

import

instanceof

int

interface

long

native

new

package

private

protected

public

return

strictfp

short

static

super

switch

synchronized

this

thow

throws

transient

try

void

volatile

while

    大致含义

关键字

含义

abstract

表明类或者成员方法具有抽象属性

assert

断言,用来进行程序调试

boolean

基本数据类型之一,布尔类型

break

提前跳出一个块

byte

基本数据类型之一,字节类型

case

用在switch语句之中,表示其中的一个分支

catch

用在异常处理中,用来捕捉异常

char

基本数据类型之一,字符类型

class

声明一个类

const

保留关键字,没有具体含义

continue

回到一个块的开始处

default

默认,例如,用在switch语句中,表明一个默认的分支

do

用在do-while循环结构中

double

基本数据类型之一,双精度浮点数类型

else

用在条件语句中,表明当条件不成立时的分支

enum

枚举

extends

表明一个类型是另一个类型的子类型,这里常见的类型有类和接口

final

用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量

finally

用于处理异常情况,用来声明一个基本肯定会被执行到的语句块

float

基本数据类型之一,单精度浮点数类型

for

一种循环结构的引导词

goto

保留关键字,没有具体含义

if

条件语句的引导词

implements

表明一个类实现了给定的接口

import

表明要访问指定的类或包

instanceof

用来测试一个对象是否是指定类型的实例对象

int

基本数据类型之一,整数类型

interface

接口

long

基本数据类型之一,长整数类型

native

用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的

new

用来创建新实例对象

package

private

一种访问控制方式:私用模式

protected

一种访问控制方式:保护模式

public

一种访问控制方式:共用模式

return

从成员方法中返回数据

short

基本数据类型之一,短整数类型

static

表明具有静态属性

strictfp

用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范[1] 

super

表明当前对象的父类型的引用或者父类型的构造方法

switch

分支语句结构的引导词

synchronized

表明一段代码需要同步执行

this

指向当前实例对象的引用

throw

抛出一个异常

throws

声明在当前定义的成员方法中所有需要抛出的异常

transient

声明不用序列化的成员域

try

尝试一个可能抛出异常的程序块

void

声明当前成员方法没有返回值

volatile

表明两个或者多个变量必须同步地发生变化

while

用在循环结构中

1.2 声明变量

    变量的使用是程序设计中一个很重要的环节。定义变量是告诉编译器这个变量的数据类型,编译器才能知道需要配置多大的空间,存放什么样的数据。

    在运行的过程中,空间内的值是变化的,这个内存空间称为变量。我们给这个空间取个名字,称为变量名。变量的命名必须是合法的标识符。内存空间内的值就是变量值。

    对于变量的命名应遵循几条规则:

  1.  变量名必须是一个的标识符;
  2. 变量名不可以使用Java中的关键字;
  3. 变量名不能重复;
  4. 应选择有意义的单词作为变量名。

1.3 声明常量

    在程序运行过程中一直不会改变的量称为常量,也被称为“ final 变量”,常量在程序中只能被赋值一次。

    声明常量的标准语法: final 数据类型 常量名称 [ =值]   

    常量名通常使用大写字母,  但是这不是必须。使用大写字母来表示常量,是为了清楚表明正在使用的常量。

    当定义的 final 变量是“成员变量时”,必须给它在定义时设定初始值,否则在编译时将发生  

public class Part{                             //新建类
    static final double PI = 3.14;  //声明 double 型常量 PI ,此时如果不对PI进行赋值,则会出现错误提示
    static int age = 23;                       //声明 int 型变量 age 并进行赋值
     public static void main(String [] args){  //主方法
        final int number;                      //声明 int 型常量 number 
        number = 1235;                         //对常量进行赋值
        age = 22;                              //再次对变量进行赋值
        // number  = 1236;                     //错误代码,因为 number 是常量,只能进行一次赋值
        System.out.println("常量 PI 的值为:"+PI);   //将 PI 的值输出
        System.out.println("赋值后 number 的值为: + number);  //将 number 的值输出
        System.out.println("int 型变量 age 的值为:"+age)        //将 age 的值输出;
    }
}

    结果为:

常量 PI 的值为: 3.14
赋值后 number 的值为: 1235
int 型变量 age 的值为: 22

1.4 变量的有效范围

1.4.1 成员变量

    在类体中的所定义的变量被称为成员变量,成员变量在整个类中都有效。类的成员变量分为两种:静态变量和实例变量。

class var{
    int x = 45;              // x 为实例变量 
    static int y = 90;       // y 为静态变量(也称类变量)
}

    如果在成员变量的类型前面加上关键字 static ,这样的成员变量称为静态变量。静态变量的有效范围可以跨类,甚至可达到整个应用程序之内。对于静态变量,除了能在定义它的类内存取,还能直接用“ 类名.静态变量”的方式在其他类中使用。

1.4.2 局部变量

    在类的方法体中定义的变量(方法内部定义,“{”与“}”之间的代码中声明的变量)称为局部变量。局部变量只在当前代码块有效。

    在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只在当前定义的方法内有效,不能用于其他类的其他方法中。局部变量的生命周期取决于方法,当方法被调用时,Java 虚拟机为方法中的局部变量分配内存空间,当该方法的调用结束后,则会释放方法中局部变量占用的内存空间,局部变量也被销毁。

    局部变量可以成员变量名字相同,此时成员变量将被隐藏,即这个成员变量在此方法中暂时失效。

public class Val{                                            //新建类
    static int times = 3;                                    //定义成员变量 times
    public static void main(Strign [] args){                 //主方法
        int times = 4 ;                                      //定义局部变量 times 
        System.out.println("times 的值为:"+ times);          //将 times 的值输出
    }
}

结果为:  times 的值为:  4

    对于学习Java,看书,看视频,看官方文档,看API,多练,多想。

    要时刻学习,更新很快,要学习新技术,好好加油,祝终成大神。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值