Java的变量,常量,作用域(源码+理论)

本文详细介绍了Java中的变量、常量和作用域概念。通过实例展示了变量的声明、赋值及不同类型,强调了变量的命名规范和作用域的三种类型:类变量、实例变量和局部变量。同时,解释了常量的定义,指出其一旦初始化后不可更改的特性,并给出了final关键字声明常量的例子。此外,还提到了变量命名的驼峰命名原则和大小写约定。
摘要由CSDN通过智能技术生成

大家好,今天来和各位聊聊Java的变量,常量,作用域

首先我们来讲变量:
我们要知道,所谓的变量是指可以标记内存当中的各种数据的记号

举个例子
可以将内存想象成一家旅馆,把存储的数据想象成住店的客人,服务人员根据你的条件,给你找到你要的房间,一个过程,就是数据存入内存的过程,在这个例子当中,变量就是你房间门牌号码

严肃的说法:
内存要完成对数据的存储,就要根据数据的类型,在内存当中给数据找一块空间放数据,并且要给这个空间起一个名字,他就是变量

我画个图,举例说明
在这里插入图片描述
变量也可以理解为:可以变化的量
Java是一种强类型语言,每一个每一个变量必须声明其类型
Java变量时程序中基本的存储单元,其要素包括变量名,变量类型和作用域

格式:
//数据类型 变量名 赋值,
有几个要注意的地方

1.每个变量名都有类型,类型可以是基本类型,也可以说是引用类型

2.变量名必须是合法的标识符

3.变量声明是一条完整的语句,因此每一个声明必须要以分号结束

看实际的代码

public class Demo05 {
    public static void main(String[] args) {


        //讲解java变量
        //nt a,b,c;
        //int a=1,b=2,c=3;  //在一行当中,我们可以定义同时定义多个变量
        //但是为了代码的可读性,不建议这样做
        String name = "xuexi";
        char x = '1';     //以char 为数据类型,自定义变量x,赋值1
        double pk = 1.23;
    }

}

关于变量还有一个作用域的概念:


变量是有作用范围(Scope)的,也即作用域。一旦超出变量的作用域,
就无法再使用这个变量。在程序中,变量一定会被定义在某一对大括号中,
该大括号所包含的代码区便是这个变量的作用域。

注意:超过了这个作用域,这个变量,就没有办法在使用了

作用域分三种:
1.类变量
2.实例变量
3.局部变量`

介绍作用域看代码:

public class Demo05 {
     static int akl=0; //类变量
    //在数据类型前面要加上 static
       String str="hello,world";//实例变量    (较常规)
              public void huj(){
                  int i=3;       //局部变量,这是写在方法里的
            }
               }      

在下面细讲

public class Demo06 {

 public static void main(String[] args) {
    //main 方法
    int i ;     //这是一个局部变量,
                //这个代码是错的,因为局部变量后面必须要有具体的值
                
    System.out.println(i);
    }
       }
       

改动如下

public class Demo06 {

   public static void main(String[] args) {
    //main 方法
    int i =10 ;     //给自定义变量i  赋值为10     
                    //这段代码是对的
    System.out.println(i);
    }
}

接下来再来源码(实例变量)

public class Demo06 {
    //属性:变量
    //实例变量:从属于对象,如果不进行初始化,那这个类型的默认值为0
    //布尔值:默认是false
    //除了基本类型,其余的默认都是null;
     String name;
     int  age;


 //main 方法
    public static void main(String[] args) {
        //局部变量:必须声明和初始化值
       int i =10;
        System.out.println(i);
        Demo06 demo06 = new Demo06();
        System.out.println(demo06.age);
        System.out.println(demo06.name);
    }
    //其它方法
    public void add(){
    }
}

下面展示他的执行效果

在这里插入图片描述

 //类变量    static
    static double  salary =2500;       //这里牵扯到数据类型转换的问题
    //类变量从属于类

下面讲常量的概念
常量:初始化后不能在再改变的值,即:不会变动的值
所谓的常量可以理解为特殊的变量,它的值一旦被设定,在程序的运行过程,不允许被修改

基本格式:
final 常量名=值;

final double ui=2.8

展示实例源码

public class Demo07 {
    static final double ui =3.12;     //如果将static去掉,就不能用了
    //static 和double两个位置可以调换,不影响
    //修饰符不存在先后顺序
    public static void main(String[] args) {
     System.out.println(ui);
    }
}

看执行效果
在这里插入图片描述
变量的命名规范:
1.所有的变量,方法,类名要能够见名知意,(看到就要知道它什么意思)

2.类成员变量,首字母小写和驼峰原则
3.常量,大写字母和下划线
4.类名:首字母大写和驼峰原则
5.方法名:首字母小写和驼峰原则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思诚代码块

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值