Ⅰ C++ HANDLE 句柄在java用什麼代替

對象引用啊

Ⅱ 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里沒句柄這個說法, 叫引用(reference)
ClassA o; //並未產生對象,只是一個ClassA類型的引用。
//和版c++指針權概念比較像, ClassA *p;

Ⅳ java如何獲得其它程序句柄

windows下獲取當前進程的話可以用dos命令tasklist


Runtimer=Runtime.getRuntime();
Processp=r.exec("cmd/Ctasklist");
BufferedReaderreader=newBufferedReader(newInputStreamReader(p.getInputStream(),"gbk"));//windows的默認系統中文編碼是gbk所以從cmd控制台的信息已gbk來解碼
Stringline=null;
while((line=reader.readLine())!=null)
System.out.println(line);

Ⅳ 請問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中的術語:對象句柄是啥意思

每種編程語言都有自己的數據處理方式。有些時候,程序員必須時刻留意准備處理的是什麼類型。您曾利用一些特殊語法直接操作過對象,或處理過一些間接表示的對象嗎(C或C++里的指針)?
所有這些在Java里都得到了簡化,任何東西都可看作對象。因此,我們可採用一種統一的語法,任何地方均可照搬不誤。但要注意,盡管將一切都「看作」對象,但操縱的標識符實際是指向一個對象的「句柄」(Handle)。在其他Java參考書里,還可看到有的人將其稱作一個「引用」,甚至一個「指針」。可將這一情形想像成用遙控板(句柄)操縱電視機(對象)。只要握住這個遙控板,就相當於掌握了與電視機連接的通道。但一旦需要「換頻道」或者「關小聲音」,我們實際操縱的是遙控板(句柄),再由遙控板自己操縱電視機(對象)。如果要在房間里四處走走,並想保持對電視機的控制,那麼手上拿著的是遙控板,而非電視機。
此外,即使沒有電視機,遙控板亦可獨立存在。也就是說,只是由於擁有一個句柄,並不表示必須有一個對象同它連接。所以如果想容納一個詞或句子,可創建一個String句柄:
String s;
但這里創建的只是句柄,並不是對象。若此時向s發送一條消息,就會獲得一個錯誤(運行期)。這是由於s實際並未與任何東西連接(即「沒有電視機」)。因此,一種更安全的做法是:創建一個句柄時,記住無論如何都進行初始化:
String s = "asdf";
然而,這里採用的是一種特殊類型:字串可用加引號的文字初始化。通常,必須為對象使用一種更通用的初始化類型。

Ⅶ JAVA中的術語:句柄是啥意思

參考在解釋:

句柄的本質:一個唯一的整數,作為對象的身份id,區分不內同容的對象,和同類中的不同實例。程序可以通過句柄訪問對象的部分信息。句柄不代表對象的內存地址。
句柄和指針的區別:程序不能通過句柄直接閱讀文件中的信息,指針是可以的。從所起的作用這點來說,句柄就是弱化後的指針,更安全,功能減少。
如果句柄不再I/O文件中,毫無用處。

Ⅷ Java的句柄是什麼意思

關於java中的引用 我覺得在"think in java"這本書裡面講得很好 在那本書里 他們把引用版叫做權"句柄"(Handle)

java中就是用"句柄"來操縱對象的

在java中 任何東西都可以看作是對象 因此,我們可採用一種統一的語法,任何地方均可照搬不誤。但要注意,盡管將一切都「看作」對象,但操縱的標識符實際是指向一個對象的「句柄」(Handle)。在其他Java參考書里,還可看到有的人將其稱作一個「引用」,甚至一個「指針」。可將這一情形想像成用遙控板(句柄)操縱電視機(對象)。只要握住這個遙控板,就相當於掌握了與電視機連接的通道。但一旦需要「換頻道」或者「關小聲音」,我們實際操縱的是遙控板(句柄),再由遙控板自己操縱電視機(對象)。如果要在房間里四處走走,並想保持對電視機的控制,那麼手上拿著的是遙控板,而非電視機。

此外,即使沒有電視機,遙控板亦可獨立存在。也就是說,只是由於擁有一個句柄,並不表示必須有一個對象同它連接。

Ⅸ Java中的句柄是什麼意思

句柄是系統分配給你操作文件的許可權,你操作所有的文件都需要用到系統分版配給你的句柄.比如說權
FileInputStream fin=new FileInputStream("c:\123.txt");
fin就是你申請後,系統分配給你c:\123.txt的句柄.你通過FIN來調用這個文件.

Ⅹ java怎麼獲得其它程序句柄

windows下獲取當前進程的話可以用dos命令tasklist

1
2
3
4
5
6
7

Runtime r=Runtime.getRuntime();
Process p=r.exec("cmd /C tasklist");
BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream(),"gbk"));//windows的默認系統中文編碼是gbk所以從cmd控制台的信息已gbk來解碼
String line=null;
while((line=reader.readLine())!=null)
System.out.println(line);