zoukankan      html  css  js  c++  java
  • Java引用与C语言指针的区别

    1、现象

      指针在运行时可以改变其所指向的值(地址)即指向其它变量,而引用一旦和某个对象绑定后就不能再改变,总是指向最初的对象。

    2、编译

    程序在编译时分别将指针和引用添加到符号表上,符号表上记录的是变量名以及变量所对应的地址。指针变量在符号表上对应的地址值为指针变量的地址值,而引用在符号表上对应的地址值为引用对象的地址值。符号表生成后就不会再改,因此指针可以改变,因此指针可以改变指向的对象(指针变量中的值可以改),而引用对象不能改。

    3、类型

      引用其值为地址的数据元素,Java封装了的地址,可以转成字符串查看,长度可以不必关心,C指针是一个装地址的变量,长度一般是计算机字长,可以认为是个int

    4、内存占用

      所占内存:引用声明时没有实体,不占空间,C指针如果声明后会用到才会赋值,如果用不到不会分配内存

    5、内存溢出

      java引用的使用权限比较小,不会产生内存溢出。C指针是容易产生内存溢出的,所以程序员需小心使用、及时回收。

  • 相关阅读:
    make_blobs(源码)
    odoo13
    Odoo Community & Enterprise | & 我的一些瞎扯。。
    odoo 应用笔记 01 [草稿]
    PVE 为虚拟机 直通硬盘
    freebsd 断电 单用户模式恢复
    odoo 绿色版
    WSL 手动下载安装
    Command pg_dump not found
    odoo性能优化
  • 原文地址:https://www.cnblogs.com/0405mxh/p/10272627.html
Copyright © 2011-2022 走看看