【学习笔记】 唐大仕—Java程序设计 第5讲 深入理解Java语言之5.1 变量及其传递

/**
* 变量及其传递 学习笔记
* @author cnRicky
* @date 2018.11.7
*/

基本类型变量与引用变量

  • 基本类型(primitive type):其值直接存于变量中。"在这里"
  • 引用型(reference type)的变量除占据一定的内存空间外,它所引用的对象实体(由new创建)也要占据一定空间。"在那里"

引用型变量与对象之间的关系

字段变量与局部变量

  • 字段变量(field)与局部变量(Local variable)
     前者是在类中,后者是方法中定义的变量或方法的参变量
  • 从内存的角度看
    存储位置,字段变量为对象的一部分,存在于堆中的,局部变量是存在于栈中。
    生命周期不同,字段变量随着对象的创建而创建,局部变量随着方法的调用被创建,随着方法调用的结束而被销毁
    初始值:字段变量可以 自动赋初值,局部变量则须显式赋值
class Test()
{
    int a;
    void m(){
        int b;
        System.out.println(b);//编译不能通过需要初始化
    }
}

两种变量的区别

  • 从语法角度看
     字段变量属于类,可以用public,private,static,final修饰
     局部变量不能够被访问控制符及static修饰
     都可以被final修饰

变量的传递

  • 调用对象方法时,要传递参数。在传递参数时,
  • Java是值传递,即,是将表达式的值复制给形式参数
  • 对于引用型变量,传递的是引用值,而不是复制对象实体
     可以改变对象的属性

变量的返回

  • 方法的返回
     返回基本类型
     返回引用类型。它就可以存取对象实体
Object getNewObject()
{
    Object obj = new Object();
    return obj;
}
  • 调用时:Object p = getNewObject();
原文地址:https://www.cnblogs.com/dreamcoding/p/9923720.html