首页编程java编程java中什么是句柄(Java的句柄是什么意思)

java中什么是句柄(Java的句柄是什么意思)

编程之家2023-10-11104次浏览

大家好,感谢邀请,今天来为大家分享一下java中什么是句柄的问题,以及和Java的句柄是什么意思的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

java中什么是句柄(Java的句柄是什么意思)

c++中 句柄类是什么

VC中的句柄 HANDLE其实是一个 void*类型。像 C语言中的 FILE一样,它是个结构体,FILE*其实是一个结构体地址类型。句柄在 Windows系统中类似于指针,它就是个指针类型,但是又和指针不同。比如分配一块可移动的内存,你可以得到一个固定的句柄,但是这块内存的指针是不固定的。句柄还有其他很多种,都是通过 HANDLE定义而来的。在 Windows编程中,句柄代表系统中唯一一个对象,比如文件句柄、图标句柄、字体句柄、位图句柄、画刷句柄、设备环境句柄、应用程序模块句柄、进程句柄、窗口句柄等。由于 Windows是封闭的,微软提供很多现成的函数(Windows API),句柄就是访问这类对象的一个"指针",通过句柄才能访问这些对象。

HANDLE类型在 Windows SDK头文件定义如下:

typedef void*PVOID;

java中什么是句柄(Java的句柄是什么意思)

typedef PVOID HANDLE;//文件句柄、进程句柄等

typedef HANDLE HICON;//图标句柄

typedef HANDLE HFONT;//字体句柄

java中什么是句柄(Java的句柄是什么意思)

typedef HANDLE HBITMAP;//位图句柄

typedef HANDLE HBRUSH;//画刷句柄

typedef HANDLE HDC;//设备环境句柄

typedef HANDLE HMODULE;//模块句柄

typedef HANDLE HWND;//窗口句柄

还有很多其他的句柄类型。

Java的句柄是什么意思

关于java中的引用我觉得在"think in java"这本书里面讲得很好在那本书里他们把引用叫做"句柄"(Handle)

java中就是用"句柄"来操纵对象的

在java中任何东西都可以看作是对象因此,我们可采用一种统一的语法,任何地方均可照搬不误。但要注意,尽管将一切都“看作”对象,但操纵的标识符实际是指向一个对象的“句柄”(Handle)。在其他Java参考书里,还可看到有的人将其称作一个“引用”,甚至一个“指针”。可将这一情形想象成用遥控板(句柄)操纵电视机(对象)。只要握住这个遥控板,就相当于掌握了与电视机连接的通道。但一旦需要“换频道”或者“关小声音”,我们实际操纵的是遥控板(句柄),再由遥控板自己操纵电视机(对象)。如果要在房间里四处走走,并想保持对电视机的控制,那么手上拿着的是遥控板,而非电视机。

此外,即使没有电视机,遥控板亦可独立存在。也就是说,只是由于拥有一个句柄,并不表示必须有一个对象同它连接。

请问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编程提示“句柄无效”什么意思

首先,可以肯定你的程序没有问题,因为我在机子上都给你试过了,运行一点问题都没有。可能的原因如下:

1、编译的时候编译器把本程序与其他程序混淆了。

解决方法:你可以另外找个目录(文件夹)编译后再运行(多编译两次)。编译后不要做其他事,赶紧运行。

2、你的jdk有问题或者版本太低找个1.5的重装。

关于java中什么是句柄,Java的句柄是什么意思的介绍到此结束,希望对大家有所帮助。

情满珠江主题曲(情满珠江主题曲作词吴剑作曲者)java初学者逛什么 初学者学习JAVA买什么书好