java 局部变量与成员成员变量的区别

package java04;
/*
局部变量和成员变量的不同:
    1、定义的位置不一样
            局部变量:定义在方法内部
            成员变量:在方法外部,直接写在类中
    2、作用范围不一样
            局部变量:只有方法中能使用,除了方法就不能用
            成员变量:整个类都可以用
    3、默认值不一样
            局部变量:无默认值,先赋值在使用
            成员变量:如果没有赋值有默认值
    4、内存的位置不一样
            局部变量:位于栈内存
            成员变量:为于堆内存
    5、生命周期不一样
            局部变量:随着方法的进栈而诞生,随着方法出栈而消失
            成员变量:随着对象的创建而诞生,随着对象被垃圾回收而消失

**/

public class Demovariabledifference {
    String name;
    int age;
    public void method1(){
        int num = 20;
        System.out.println(num);
        System.out.println(name);
    }
    public void mehtod2(int param){//方法的参数是局部变量
        System.out.println(param);//参数在方法调用的时候,必然会被赋值

        int age;//局部变量
      //  System.out.println(age);  //没赋值不能用

       // System.out.println(num);//错误写法
        System.out.println(name);
    }

}

原文地址:https://www.cnblogs.com/spp666/p/11700705.html

时间: 2024-07-30 21:08:27

java 局部变量与成员成员变量的区别的相关文章

比较全局变量、全局静态变量、局部变量、局部静态变量的区别

比较全局变量.全局静态变量.局部变量.局部静态变量的区别,他们在编译完后存储位置在什么地方.初始化值在什么地方.内存什么时候分配.赋初值对这些变量有哪些影响等.要弄清楚这些问题,首先要弄清楚下面几个知识点. C语言分下面几个存储区: 1.栈区(stack) 由编译器在需要的时候自动分配释放,在不需要的时候就自动清除的变量存储区.通常存放的变量是函数的参数值.局部变量的值等,其操作方式类似于数据结构中的栈. 2.堆区(heap) 一般由程序员去分配释放,和编译器完全没有关系,直接由我们的应用程序去

Java基础——成员变量、局部变量和静态变量的区别

之前在刚开始学习Java的时候,就谈了谈Java基础中的变量,虽然知道这货以后会经常用到,但没想到了基本语法这里,竟然有冒出来了成员变量.局部变量和静态变量.变来变去太容易让人搞晕了,挑拣出来梳理一下喽! 要想区分这哥仨,首先,我们得知道它们分别是什么.先从成员变量下刀. 成员变量 我们来研究一个事物: 属性:外在特征:例如人的身高,体重 行为:能够做什么:例如人有说话,打球等行为. 而在Java语言中,最基本的单位是类,类就是用来体现事物的. 用类class来描述事物也是如此: 属性:对应类中

java 局部变量成员变量区别

首先,成员变量可直接初始化(即赋值),也可不赋值,不赋值java按照以下类型自动赋值 局部变量调用前必须初始化(赋值),java不会自动处理 局部变量可以和成员变量重名(但不建议),如果在当前对象的方法内调用当前属性(成员变量),需要this.属性名 例如: public class Test { String name; public void setName(String name) { this.name = name; } } 详细见this super 篇

成员变量、局部变量、静态变量的区别及

成员变量在堆区,因为成员属于对象的一部分,而对象分配在对中 局部变量分配在占中,对象的引用也分配在栈中 静态变量分配在方法区的静态区中 1:成员变量和局部变量的区别 (1)在类中的位置不同 成员变量:类中方法外 局部变量:方法定义中或者方法声明上 (2)在内存中的位置不同 成员变量:在堆中 局部变量:在栈中 (3)生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 (4)初始化值不同 成员变量:有默认值 局部变量:没有默认

java局部变量与成员变量相关问题总结

java局部变量与成员变量相关问题总结 2013-02-03 12:39 156人阅读 评论(0) 收藏 举报 一.Java中的所有变量可以分成局部变量和成员变量.他们的区别: 1. 定义 成员变量:在类体里面定义的变量称为成员变量: 局部变量:形参.方法.代码块中定义的变量,都属于局部变量. (注:局部变量定义必须在方法里面!) 2. 详细分类 成员变量:1)类变量(静态变量)——有static修饰: 2)实例变量(非静态变量)——没有static修饰. 局部变量:1)形参——方法签名中定义的

成员变量和局部变量,静态变量的区别

成员变量和局部变量,静态变量的区别 1.成员变量和局部变量的区别 1)在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 2)在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存) 3)生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 4)初始化值不同 成员变量:有默认初始化值 局部变量:没有默认初始化值,必须定义,赋值,

java易混淆概念之类变量、成员变量、局部变量

java易混淆概念之类变量.成员变量.局部变量 类变量.成员变量.局部变量 类变量(也叫静态变量)是类中独立于方法之外的变量,用static 修饰.(static表示“全局的”.“静态的”,用来修饰成员变量和成员方法,或静态代码块(静态代码块独立于类成员,jvm加载类时会执行静态代码块,每个代码块只执行一次,按顺序执行)). 成员变量(也叫“实例变量”.“域”)也是类中独立于方法之外的变量,不过没有static修饰. 局部变量是类的方法中的变量. 看下面的伪代码说明: public class 

静态变量和成员变量的区别 && 成员变量和局部变量的区别

============================================================================= 1)静态变量和成员变量的区别: (1):所属不同: 静态变量:属于类,也称为类变量. 成员变量:属于对象,也称为对象变量或实例变量. (2):在内存中的位置不同: 静态变量:存储于方法区的静态区. 成员变量:存储于堆内存. (3):生命周期不同: 静态变量:静态变量是随着类的加载而加载,随着类的消失而消失. 成员变量:成员变量是随着对象的创建

Java 局部变量、实例变量、类变量(静态变量)区别

1. 局部变量: 局部变量是类的方法中的变量: 2. 实例变量: 实例变量也是类中独立于方法之外的变量,不过没有static修饰,也叫 对象变量 3. 类变量(静态变量): 类变量是类中独立于方法之外的变量,用static 修饰,也叫 静态变量 4. 伪代码说明 public class Variable{ static int allClicks=0;//类变量 String str="hello world";//实例变量 public void method(){ int i =

iOS 成员变量,实例变量,属性变量的区别,联系

在ios第一版中: 我们为输出口同时声明了属性和底层实例变量,那时,属性是oc语言的一个新的机制,并且要求你必须声明与之对应的实例变量,例如: 注意:(这个是以前的用法) @interface MyViewController :UIViewController { UIButton *myButton; } @property (nonatomic, retain) UIButton *myButton; @end 在现在iOS版本中: 苹果将默认编译器从GCC转换为LLVM(low leve