美文网首页
Java "="(赋值过程)

Java "="(赋值过程)

作者: LemonCandy | 来源:发表于2018-05-15 17:38 被阅读0次

基本类型赋值

int a = 3;

int a声明 int 型的引用a, 存储在栈中
3 查找堆栈中是否存在为3的字面值,若不存在,在堆栈中开辟一个地址存放3字面量
= 将引用a指向存储3字面量的地址

String类型赋值

String s = "hello";

String s 声明 String 类型的引用 s,存储在栈中
"hello" 存储在String 常量池中
= 将引用s指向存储hello的地址

类赋值

StringBuffer buffer = new StringBuffer("hello");

new StringBuffer("hello") 在堆中创建一个对象
StringBuffer buffer 声明StringBuffer类型的引用buffer
=buffer指向创建的对象的地址


总结

= 左边声明某类型的引用,存储在栈中
= 右边将存储在内存中,基本类型值存储在栈中,常量值存储在常量池中,对象存储在堆中
= 连接引用指向存储的地址


参数传递

理解为引用的传递
但是在效果上基本数据类型和类的参数传递有区别
这是为什么呢?

相关文章

  • Java "="(赋值过程)

    基本类型赋值 int a声明 int 型的引用a, 存储在栈中3 查找堆栈中是否存在为3的字面值,若不存在,在堆栈...

  • Java的系统属性

    Java的系统属性有很多与底层操作系统相关,本文分析这些属性的赋值过程。 虚拟机启动 Java Hotspot虚拟...

  • Verilog的各种赋值

    Verilog中的赋值主要有三种,连续赋值、过程赋值以及过程连续赋值。最常见的赋值对象主要是wire型变量和reg...

  • KVC 赋值过程、取值过程

    赋值过程 1.先找相关方法 set:, _set:, setIs:2.若没有相关方法...

  • BeanUtils.jar java中的字典转模型库

    自动转换java属性进行赋值

  • 《Java编程思想》读后总结(二)

    Java里的数据类型 Java里的对象是引用,就像C的指针。对引用的赋值实际就是对指针的赋值,对象本身并没有被赋值...

  • 第二章 java基础(按位运算符)

    —— 本文参照 Learn Java for Android Development (第三版) 赋值运算符赋值运...

  • 类加载机制之初始化

    Java类加载分为5个过程,分别为:加载,连接(验证、准备、解析),初始化。 一、static变量的赋值在类的初始...

  • java 静态 new 对象

    一般情况下: Java中赋值顺序:父类的静态变量赋值自身的静态变量赋值父类成员变量赋值和父类块赋值父类构造函数赋值...

  • Java赋值方式

    整数 十进制赋值(最常用的)例:int num = 10; 二进制赋值(JDK1.7之后才有的)以0B或0b开头,...

网友评论

      本文标题:Java "="(赋值过程)

      本文链接:https://www.haomeiwen.com/subject/wphydftx.html