【JAVA】区分成员变量和局部变量

一、成员变量

1.成员变量是在类的范围里定义的变量

public class Dog {
    //这两个变量就是成员变量(或称为实例变量)
    private String name; // 定义一个私有的字符串类型的成员变量,用于存储狗的名字
    protected int age;   // 定义一个受保护的整型成员变量,用于存储狗的年龄
}

2.成员变量有默认初始值

// 默认初始值为null
System.out.println(Dog.name)//输出为null

3.被static修饰的变量叫类变量,未被static修饰的变量叫实例变量,类变量随着类消失,实例变量随着对象消失。

二、局部变量

1.局部变量是在方法中定义的变量


    public void calculateSum(int a, int b) {
        int result; // 这是一个局部变量,在calculateSum方法内部定义
        result = a + b; // 给局部变量result赋值
        System.out.println("The sum is: " + result);
    }

2.局部变量没有默认初始值

public class Example {
    public void testLocalVar() {
        int localVar; // 局部变量localVar没有初始化
        System.out.println(localVar); // 这将抛出编译错误,因为局部变量在使用前没有初始化
    }

    public static void main(String[] args) {
        Example example = new Example();
        // 即便不调用testLocalVar方法,编译器仍然会报错,因为局部变量localVar在其声明后立即尝试使用,但没有被初始化
    }
}

3.局部变量随着方法消失

public class Example {
    public void doSomething() {
        String temporaryVariable = "This is a local variable"; // 局部变量声明和初始化
        System.out.println(temporaryVariable);
    }

    public static void main(String[] args) {
        Example example = new Example();
        example.doSomething(); // 方法调用,此时临时变量存在
        // 方法调用结束后,temporaryVariable不再可用
        // 试图在此处访问或使用temporaryVariable将会导致编译错误,因为它仅在doSomething方法内部有效
    }
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值