建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

介绍变量的六个属性

时间:2011-03-02 09:11来源:博客园 作者: 点击:
介绍变量的六个属性,程序员基础知识: 变量 是机器存储单元在语言中的抽象。它是编程语言最重要的概念之一。 变量有6个属性(或者说从6个方面去描述变量) 名字/别名 地址/左值 值/右值 类型 作用域 生存期/生命期 1,名字/别名 名字的概念在 名字

介绍变量的六个属性,程序员基础知识:

变量 是机器存储单元在语言中的抽象。它是编程语言最重要的概念之一。

变量有6个属性(或者说从6个方面去描述变量)

名字/别名
地址/左值
值/右值
类型
作用域
生存期/生命期

1,名字/别名

名字的概念在 名字/标识符 已经提到。
当多个名字访问的都是同一个存储地址时(或者说多个名字都 绑定/约束 于同一个存储地址),可称这些名字为 别名。
使用别名有损于程序的可读性,然而却很难从一门语言中完全消除。如下

Java
view sourceprint?
1    public static void main(String[] args) {  
2        String name = "jack";
3        String alias = name;  
4        name = "lily";
5        
6        System.out.println(name);
7        System.out.println(alias);
8    }

Javascript
view sourceprint?
1    var name = 'jack';
2    var alias = name;
3    name = 'lily';
4    alert(name);
5    alert(alias);

可以看到变量alias作为name的别名,都指向同一个地址,值为“jack”。但当name发生变化后,alias却全然不知。
许多语言中,子程序的参数也可产生别名现象。

2,地址/左值

计算机中所有的数据都是存放在存储器中的,一般把存储器中的一个字节称为一个存储单元。为了正确的访问这些
存储单元,需要为每个存储单元编个号。根据编号即可准确的找到该内存单元。内存单元的编号就称为 地址 。

在许多语言中,程序中同一个 名字/标识符 可以在不同的时间,与不同的 地址 关联/绑定 。
变量的地址有时也称为变量的左值(left value),或许是因为各种语言中变量经常位于赋值语句的左边。

String name = 'jack'; // Java
var name = 'jack'; // JavaScript

又或许在地址图上编号总是位于左边,值总是在右边

名字 与 地址 的 关联/绑定 后续会提到。
(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片