java基础(7)变量以及变量的分类

简介: Java变量是内存中存储数据的基本单元,包含数据类型、名称和字面值。变量的数据类型决定了分配的内存空间大小。变量声明格式为“数据类型 变量名;”,变量名应符合标识符命名规范。变量可以重新赋值,但数据类型需一致。变量可以一行声明多个,作用域决定了变量的可用范围。变量分为局部变量和成员变量,局部变量定义在方法体内,成员变量定义在方法体外、类体内。

变量

1.什么是变量?
变量本质是内存中的一块空间,这块空间有 数据类型 有名字 有字面值
变量包含三部分:数据类型、名称、字面值[数据]
变量是内存中存储数据的最基本单元

2.数据类型的作用?
不同的数据有不同的类型,不同的数据类型会分配不同大小的空间
数据类型是指导程序在运行阶段应该分配多大的内存空间

3.变量要求
变量中的数据必须和变量的数据类型一致;

4.声明变量的格式
数据类型 变量名 ;

int a;

变量名:只要是合法的标识符就行,首字母小写,后面每个单词首字母大写;

int i;
int myName;

5.声明变量之后赋值操作
变量名 = 字面值
要求:字面值的数据类型必须和变量的数据类型一致
\= 等号是赋值运算符

6.声明和赋值
数据类型 变量名 = 字面值

int i = 10;

7.变量赋值之后可以重新赋值;

int i =10;
i =100;

8.有了变量赋值之后,内存空间得到了重复的使用;

9.访问一个变量包括两种方式
9.1.读取变量中保存的具体数据 get 读取
9.2.修改变量中保存的具体数据 set 设置

int a = 10;
System.out.println(a);   //get
a =100;   //set

10.变量在一行可以声明多个

int a,b,c;

11.作用域
方法体内的变量只能在方法中使用;
变量的作用域就是变量的有限范围;

12.变量的分类
12.1.局部变量 — 方法体内的变量;
12.2.成员变量 ----方法体外、类体内的变量
在不同作用域中,变量名是可以相同的
在同一个作用域中,变量名不能重名

public class Var {
   
    // 成员变量
    int b = 100;

    public static void main(String[] args) {
   
        // 声明一个变量a 并赋值 10
        // 成员变量
        int a = 10;
        // 读取a变量的字面值
        System.out.println(a);
        int b;
        // 没赋值不能访问b 会编译错误
        // System.out.println(b);
        b = 100;
        System.out.println(b);
    }

    // 成员变量
    int a = 100;
    // 类体中不能直接编写java语句  除了声明变量
    // System.out.println(a);
    public static void doSome() {
   
        // 局部变量
        int m = 100;
    }
}
目录
相关文章
|
2天前
|
存储 安全 Java
Java 常用集合分类
Java 常用集合分类
12 2
|
2天前
|
Java
java基础(8)数据类型的分类
Java数据类型分为基本数据类型(8种)和引用数据类型。基本类型包括byte, short, int, long, float, double, boolean, char。每种类型有固定占用空间大小,如int占用4字节。字符编码如ASCII和Unicode用于将文字转换为计算机可识别的二进制形式。
12 2
|
20天前
|
存储 Java 开发者
【Java新纪元启航】JDK 22:解锁未命名变量与模式,让代码更简洁,思维更自由!
【9月更文挑战第7天】JDK 22带来的未命名变量与模式匹配的结合,是Java编程语言发展历程中的一个重要里程碑。它不仅简化了代码,提高了开发效率,更重要的是,它激发了我们对Java编程的新思考,让我们有机会以更加自由、更加创造性的方式解决问题。随着Java生态系统的不断演进,我们有理由相信,未来的Java将更加灵活、更加强大,为开发者们提供更加广阔的舞台。让我们携手并进,共同迎接Java新纪元的到来!
45 11
|
1月前
|
Java
【Java基础面试七】、请介绍一下实例变量的默认值
这篇文章介绍了Java中实例变量的默认值:引用数据类型的默认值是null,而基本数据类型的默认值根据其类型分别是0、0L、0.0F、0.0、'\u0000'和false。
【Java基础面试七】、请介绍一下实例变量的默认值
|
23天前
|
存储 Java 程序员
优化Java多线程应用:是创建Thread对象直接调用start()方法?还是用个变量调用?
这篇文章探讨了Java中两种创建和启动线程的方法,并分析了它们的区别。作者建议直接调用 `Thread` 对象的 `start()` 方法,而非保持强引用,以避免内存泄漏、简化线程生命周期管理,并减少不必要的线程控制。文章详细解释了这种方法在使用 `ThreadLocal` 时的优势,并提供了代码示例。作者洛小豆,文章来源于稀土掘金。
|
1月前
|
存储 安全 Java
Java 中的 ThreadLocal 变量
【8月更文挑战第22天】
35 4
|
1月前
|
安全 Java 编译器
Java 中的 volatile 变量
【8月更文挑战第22天】
22 4
|
13天前
|
JavaScript 前端开发 Java
通过JUnit5访问Java静态、私有、保护变量和方法
在《通过Gtest访问C++静态、私有、保护变量和方法》一文中介绍了如何通过Gtest访问C++静态、私有、保护变量和方法,本文介绍如何通过Junit5访问Java静态、私有、保护变量和方法。
14 0
|
1月前
|
存储 安全 Java
在 Java 中如何声明 ArrayList 变量
【8月更文挑战第23天】
42 0
|
1月前
|
Java
成功解决:java: 找不到符号 符号: 方法 getSort() 位置: 类型为com.atguigu.gulimall.product.entity.CategoryEntity的变量 menu1
这篇文章讨论了Java中遇到的一个常见错误:"java: 找不到符号 符号: 方法 getSort() 位置: 类型为com.atguigu.gulimall.product.entity.CategoryEntity的变量 menu1",即在尝试调用一个不存在的方法时出现的问题,并提供了相应的解决方法。