变量、常量、作用域

1、变量

  1. 变量就是可以变化的量

    • 可以利用变量来操作内存中的数据

    • 变量就是在内存中代表一个空间,这个空间的位置是确定的,而这个空间中的东西可以是不确定的

    • 变量就类似于一个柜子,柜子摆放的位置是固定的,但是柜子里可以放鞋子,也可以放衣服,是不固定

       

  2. Java是一种强类型的语言,每个变量都必须声明其类型

  3. 变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域

     

    定义变量的格式: 数据类型 变量名 = 变量值;

    注:可以在一行完整的语句中使用逗号隔开来声明多个同类型变量,但不建议这样去定义,会影响程序的可读性。如下图

     

  4. 注意事项:

    • 每个变量都必须定义数据类型,可以是基本类型(八大基本数据类型),也可以是引用类型(比如:String类型)

    • 变量名必须是合法标识符

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

  5. 变量正确的定义方式如下

     

     

2、变量的三种作用域

  1. 变量的作用域可分为三种,即类变量、实例变量及局部变量,在程序中的位置如下图

     

     

  2. 类变量需要加一个关键词:static,而实例变量则没有这个要求

  3. 局部变量不存在于里,而是定义在方法里(class是类,而method是方法,main也是方法,只不过是比较特殊的方法,称为主程序方法,所有需要系统执行的程序,都需要写在main方法里)

  4. 三种不同作用域的变量定义方法如下图所示

     

     

    • 实例变量从属于对象(类),定义在类之中,但是在方法之外,如果不自行初始化赋值,这个类型会输出默认值,整个类中都可以使用这个变量。

      • 默认值:整数默认为0,浮点数默认为0.0,布尔值默认为false,除了基本类型,其余的类型都是Null

      • 实例变量如果要输出,需要在main方法中中定义自身为类型,即自定义类型,也是一种引用类型。这个就是面向对象

      • 自定义类型格式:变量类型 变量名 = new 变量类型();

    • 类变量:同样从属于类,并且和类一起出现,一起消失,也是定义在类之中,方法之外

      • 类变量实例变量区别在于需要赋予初始值,且必须加上static,在main方法中输出时,不需要自定义数据类型(new一个对象),可以直接输出。整个类中都可以使用这个变量。

    • 局部变量:直接定义在方法或者方法块(代码块)中,且必须声明数据类型和赋予初始化值,且只有在定义变量的方法中才有效

       

3、变量的命名规范

  1. 所有的变量、方法、类,命名都要求:见名知意

  2. 除了常量要求大写字母,其他的成员变量(及局部变量、实例变量和类变量),都要遵循首字母小写以及驼峰原则monthSalary(除了第一个单词以外,后面的单词都是首字母大写)

  3. 常量名命名规范:全部使用大写字母,如果名字比较长,建议单词之间加下划线,如:MAX_VALUE

  4. 类名的命名规范:首字母大写及驼峰原则,如:Man、GoodMan

  5. 方法名的命名规范:首字母小写及驼峰原则,如:run()、runRun()

     

4、常量

  1. 常量是初始化后不能再改变的值,即程序中不会变动的值

  2. 常量可以理解为一个特殊的变量,它的值被设定后,在程序运行过程中不允许被改变

  3. 常量在定义时,由固定修饰符:final进行修饰,如下图

     

  4. 常量名一般使用大写字母,与类变量一样,常量也是定义在类中,并且可以被方法直接调用

  5. final是修饰符,用于表示常量,同样,上文中表示类变量static同样也是修饰符,修饰符不存在先后顺序,不影响对数值的定义。如下图

    无论staticfinal哪个定义在前面,对常量的定义没有任何影响,都能正常的赋值和输出

     

 

posted @   零和一的浪漫  阅读(138)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示