句柄
参考 java句柄
什么是句柄
句柄(Handle)来标示应用程序中不同的对象和同类中不同的实例
注意:句柄有人认为是指针、或者引用
下面就是一个简单的句柄(不怎么形象)
class demo{
@Test
public void test(){
String s;//句柄
String s1=new String();句柄=实例对象
s1 = "a";//通过句柄操作对象
System.out.println(s1);
System.out.println(s1.hashCode());
}
}
句柄最简单的例子就是,把句柄看作一个遥控器(鼠标),而对象看作电视机(电脑),你可以通过遥控器的发出的频率来控制电视显示的节目(通过鼠标控制电脑的软件,来达到自己的自定义界面),可以把String s;看成创建句柄(遥控器),而 new String() 看成对象(电视)而中间的‘=’号,你可以看成连接介质。
区分什么是指针/引用/句柄
1.指针是对象在内存中的地址;
2.引用是对象的别名,其实质就是功能受限但是安全性更高的指针;
3.句柄是指针的指针,句柄实际上是一个数据,是一个Long (整长型)的数据。句柄是一个标识符,是拿来标识对象或者项目的。
网友评论