Java中的对象使用局部变量与成员变量的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的对象使用局部变量与成员变量的区别相关的知识,希望对你有一定的参考价值。

对象的使用

对象的使用格式

创建对象:

使用对象访问类中的成员:

对象的使用格式举例:

    public static void main(String[] args) 
        // 1. 导包。
        // 我需要使用的Student类,和我自己Demo02Student位于同一个包下,所以省略导包语句不写

        // 2. 创建,格式:
        // 类名称 对象名 = new 类名称();
        // 根据Student类,创建了一个名为stu的对象
        Student stu = new Student();

        // 3. 使用其中的成员变量,格式:
        // 对象名.成员变量名
        System.out.println(stu.name); // null
        System.out.println(stu.age); // 0
        System.out.println("=============");

        // 改变对象当中的成员变量数值内容
        // 将右侧的字符串,赋值交给stu对象当中的name成员变量
        stu.name = "赵丽颖";
        stu.age = 18;
        System.out.println(stu.name); // 赵丽颖
        System.out.println(stu.age); // 18
        System.out.println("=============");

        // 4. 使用对象的成员方法,格式:
        // 对象名.成员方法名()
        stu.eat();
        stu.sleep();
        stu.study();
    

成员变量的默认值

数据类型 默认值
基本类型 整数(byte,short,int,long)
浮点数(float,double) 0.0
字符(char) \\u0000
布尔(boolean) false
引用类型 数组,类,接口 null

对象内存图

一个对象,调用一个方法内存图

两个对象,调用同一方法内存图

一个引用,作为参数传递到方法中内存图

成员变量和局部变量区别

变量根据定义位置的不同,我们给变量起了不同的名字。如下图所示:

  • 在类中的位置不同
    • 成员变量:类中,方法外
    • 局部变量:方法中或者方法声明上(形式参数)
  • 作用范围不一样
    • 成员变量:类中
    • 局部变量:方法中
  • 初始化值的不同
    • 成员变量:有默认值
    • 局部变量:没有默认值。必须先定义,赋值,最后使用
  • 在内存中的位置不同
    • 成员变量:堆内存
    • 局部变量:栈内存
  • 生命周期不同
    • 成员变量:随着对象的创建而存在,随着对象的消失而消失
    • 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失

以上是关于Java中的对象使用局部变量与成员变量的区别的主要内容,如果未能解决你的问题,请参考以下文章

java类与对象_成员变量和局部变量区别

Java中成员变量和局部变量区别

java中局部变量和成员变量的区别?

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

java-局部变量,成员变量区别

Java 基础 面向对象