java局部变量是什么意思?Java中局部变量与成员变量有哪些区别?

TheDisguiser 2020-05-04 17:30:15 java常见问答 6059

大家知道Java中的局部变量吗?今天我们要了解的Java的局部变量及它和成员变量的区别,一起来看看吧。

什么是局部变量?

局部变量时就是只有一部分可见的变量,例如定义在方法中的变量,只有这百个方法才能使用,同一个类的其他方法或者其他的类都不可见度。多态是面向对象编程的巨大优势,多态其实就是多种形态或者多种状态的意思,比如我们人来,我们都会说话,能思考,会打豆豆,但是人类具体概念概念太广泛了,例如:人类也分黄种人、黑人、白种人,不同的人种之间又有不同的属性,最明显的就如头发颜色,但是就算是同一种人也不会完全相同,它们的年龄、学历、性格。这就是java及所有面向对象语言最具特点的抽象与多态。从所有人类到某个人类,这是抽象,从某个人类到所有人类,这是多态,虽然都是人类,但是形态却是不可能完全一样的。

Java中局部变量与成员变量区别在哪里?

1. 定义的位置不一样

局部变量:写在方法内部

成员变量:写在方法外部,直接写在类当中

2.作用范围不一样

局部变量:只有方法当中才可以使用,出了方法就不能再用

成员变量:整个类全都可以通用。

3.默认值不一样

局部变量:没有默认值,如果想要使用,必须手动进行赋值

成员变量:如果没有赋值,会有默认值,规则和数组一样

4.内存的位置不一样

局部变量:位于栈内存

成员变量,位于堆内存。

5.生命周期不一样

局部变量:随着方法进栈而诞生,随着方法出栈而死亡。

成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失。

例:

public calss Demo01variableDifference
{
    String name; //成员变量
    public void methodA()
    {
        int num = 20; //局部变量 默认值为NULL
        System.out.println(num);
        System.out.println(name);
    }
    public void methodB(int param)
    {
        //方法的参数就是局部变量
        System.out.println(param); //参数也是局部变量,为什么不赋值就可以输出?
        //因为参数在方法调用的时候,必然会被赋值的。不传参数就会报错。
        int age;
        //System.out.println(age);//错误写法 未赋值不能使用,必须赋值
        // System.out.println(num);//错误写法
        System.out.println(name);
        /
    }
}

以上就是Java局部变量的所有内容,更多Java入门知识请关注我们了解吧。