成员变量&局部变量

成员变量和局部变量

一、成员变量和局部变量

变量声明的位置决定变量作用域

变量作用域确定可在程序中按变量名访问该变量的区域

public class Var {
    //属性:成员变量(全局变量)
//系统默认为成员变量赋初始默认值

    int num;
    String s;


    //方法
    public void test1() {
        //在方法中定义的为局部变量,只能在这个方法中使用
        //局部变量的作用域为一个方法或者一个语句块
        //局部超出作用域不可使用

        //局部变量必须初始化赋值使用
        int n = 9;
        System.out.println(n);
    }


    public static void main(String[] args) {
        int i = 0;//只能在main方法中使用
        //如果在for循环中定义那作用范围只能在for循环中
        for (; i < 9; i++) {
            System.out.println("Hello");
        }
        System.out.println(i);
    }
}

二、成员变量和局部变量的区别

作用域不同

  • 局部变量的作用域仅限于定义它的方法

  • 成员变量的作用域在整个类内部都是可见的

初始值不同

  • Java会给成员变量一个初始值

  • Java不会给局部变量赋予初始值

注意:

  • 同一个方法中,不允许有同名局部变量

  • 不同方法中,可以有同名的局部变量

  • 在同一个类中,成员变量和局部变量同名时,局部变量具有更高的优先级

public class Example {
    private int number = 10; // 成员变量

    public void display() {
        int number = 20; // 局部变量,同名但优先级更高
        System.out.println(number); // 这里输出的是20,因为局部变量遮蔽了成员变量
    }
}

方法的参数也是局部变量 只能在对应方法中使用

public class Example {
    
    public void printMessage(String message) {
        // message 是一个局部变量,作为方法的参数传递进来
        System.out.println(message);
    }
    public static void main(String[] args) {
        Example example = new Example();
        // "Hello, World!" 是传递给 printMessage 方法的参数
        example.printMessage("Hello, World!");
        // 在这里,"Hello, World!" 已经不再可见,因为它是 printMessage 方法的局部变量
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值