什么是java句柄 Java的句柄是什么意思
大家好,什么是java句柄相信很多的网友都不是很明白,包括Java的句柄是什么意思也是一样,不过没有关系,接下来就来为大家分享关于什么是java句柄和Java的句柄是什么意思的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
Java编程提示“句柄无效”什么意思
首先,可以肯定你的程序没有问题,因为我在机子上都给你试过了,运行一点问题都没有。可能的原因如下:
1、编译的时候编译器把本程序与其他程序混淆了。
解决方法:你可以另外找个目录(文件夹)编译后再运行(多编译两次)。编译后不要做其他事,赶紧运行。
2、你的jdk有问题或者版本太低找个1.5的重装。
java能获得窗口句柄吗
JFrame jf= new JFrame("窗口句柄");
这个 jf对象就是你所说的窗口句柄,因为java把指针屏蔽了,所以没有什么值地址的东西,如果你要像C里面哪里传地址的话
java就这样
JFrame jf1= new JFrame("窗口句柄");
JFrame jf2= jf1;
这个jf2就是 jf1的引用,你改变jf2就改变了jf1
同样的函数里面返回时,只要你不再new一个,
比如
JFrame jf1= new JFrame("窗口句柄");
public JFrame getJFrameHander(){
return jf1;
}
你在另外的代码里调用这个函数
比如
{
JFrame jf2= getJFrameHander();
}
这个jf2就拥有了 jf1的引用,应该就是你所说的句柄
不知道我说的是不是你想知道的那样
请问java中的句柄,对象,实例有什么区别呢
在java中对象是一个很抽象的概念!对象是以它的实例的形式存在的。
声明了一个类型的变量也就是声明了一个该类型的对象。但是这个对象只是一个抽象的概念,并不会在内
存中存在,只有实例化这个对象之后,才会在内存中分配空间。
可以这么理解:声明了一个int a但并没有初始化它,它就不会具有值。只有a=0这样初试化a之后,a才
具有0这个值。
实例化对象时就会产生一个指向该对象的这个实例的句柄。
以此为例:
class value{
int i;
}
public class EqualsMethod{
public static void main(string[] args){
value v1=new value();
value v2=new value();
vl.i=v2.i=100;
}
}
在class EqualsMethod中value v1=new value();
value v2=new value();
这2行首先value v1 value v2
声明了v1,v2 2个value类型的对象。
然后用new运算符实例化了v1,v2两个对象。
而v1,v2这两个标识符,代表的分别是两个指向对象实例的句柄。
然而当v1.i时我使用的v1这个标识符,并不是对象,我们无法直接操纵对象实例
v1是指向这个对象的句柄,v2也是一样。我们通过句柄访问对象实例。
所以在这里v1,v2是句柄,它们所指向的对象我们是看不见的。
求采纳,谢谢
Java的句柄是什么意思
关于java中的引用我觉得在"think in java"这本书里面讲得很好在那本书里他们把引用叫做"句柄"(Handle)
java中就是用"句柄"来操纵对象的
在java中任何东西都可以看作是对象因此,我们可采用一种统一的语法,任何地方均可照搬不误。但要注意,尽管将一切都“看作”对象,但操纵的标识符实际是指向一个对象的“句柄”(Handle)。在其他Java参考书里,还可看到有的人将其称作一个“引用”,甚至一个“指针”。可将这一情形想象成用遥控板(句柄)操纵电视机(对象)。只要握住这个遥控板,就相当于掌握了与电视机连接的通道。但一旦需要“换频道”或者“关小声音”,我们实际操纵的是遥控板(句柄),再由遥控板自己操纵电视机(对象)。如果要在房间里四处走走,并想保持对电视机的控制,那么手上拿着的是遥控板,而非电视机。
此外,即使没有电视机,遥控板亦可独立存在。也就是说,只是由于拥有一个句柄,并不表示必须有一个对象同它连接。
好了,关于什么是java句柄和Java的句柄是什么意思的问题到这里结束啦,希望可以解决您的问题哈!