文章标题

在java中操纵元素的方法不是C或c++中基于指针的间接表示,它将一切都视为了对象,可以采用单一固定的语法。

尽管将一切都看成了对象,但操纵的标识符是对象的一个“引用”。可以将这个过程看为遥控器(引用)操作电视机(对象),很明显,当你需要执行一些行为,直接用遥控器就可以了。此外,遥控器是可以单独存在的,也就是说你可以有一个独立的引用,而不一定需要一个对象和它关联。

public class A{
public static void main(String[] args){
    A a;
    A b = new A();
}
}

上边的代码就说明这样的问题,a是一个独立的引用,而b就是关联对象的引用。

接下就说说java中把东西都放到哪里去了:
1.寄存器:这是最快的存储区。
2.堆栈:通过堆栈指针从处理器获得直接支持,上下移动堆栈指针,则释放或分配指针。一般将对象引用存储其中。
3.堆:一种通用的内存池,用于存放所有的java对象。
4.常量存储:常量值通常放在程序代码内部,永远不会改变。

class A{
public int num;
}
public class B{
public static void main(String[] args){
A a = new A();
A b = new B();
a.num = 10;
b.num = 20;
System.out.print(a.num);
System.out.print(“”+b.num);
a = b;
System.out.println(a.num);
System.out.print(“”+b.num);
a.num = 88;
System.out.println(a.num);
System.out.print(“”+b.num);

}

}
输出结果:
10 20
20 20
88 88
A类非常简单,它的两个实例在B中创建的。每个A类对象的num域都赋予了不同的值,然后将b赋给a,接着又修改了a。但由于赋值操作是对对象的引用,所以在改了a的时候同时也修改了b。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值