[英]java debugging - watch an out of scope variable
在調試C / C ++應用程序時,我可以創建一個轉換為指針類型的地址的監視,然后查看結構的內容,即使它超出范圍。 是否有可能在Java中實現類似的東西?
假設我在一個方法中,我添加了一個像“&this”這樣的東西,然后當我離開類方法時,我仍然可以看到它的內容,即使它超出了范圍?
我很確定我的問題的答案是“不”,所以我最感興趣的是“為什么不呢?” 說明。 這是JVM的限制嗎? JPDA限制? 有沒有更好的地方提出這樣一個專門的問題?
在C / C ++中,您正在觀察(指向的區域)一個任意指針,轉換為該變量。
在Java中沒有指針。 你只能watch
變量。 超出范圍它不存在。
你還為什么要看它呢? 如果你把手表放在上面,它會在范圍內正確觀察。
您無法觀看不在范圍內的變量。
但是,如果找到指向它的另一個變量,則可以觀察同一個對象。
觀察一個沒有被引用的對象是沒有意義的(它不會以任何方式影響程序執行,它不能再被更改,它將被垃圾收集並且內存被完全不同的東西重用)。
Java級調試工具仍然可以在JVM內存管理之上工作,因此您需要對對象進行有效引用,您不能只查看隨機內存區域。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.