簡體   English   中英

Intellij調試器:true變為false,這是怎么回事...?

[英]Intellij debugger: true becomes false, what is going on…?

我有這個配置類:

public class ShiroConfiguration {
  private final boolean enabled = false;

    public boolean isEnabled() {
      return enabled; // ****
    }

顯然,錯誤是我將啟用標志設置為“最終”,因此它只能是假的。

在運行時,我試圖弄清為什么未啟用配置,因此在調試器(在IntelliJ中)中運行了代碼,並在加星號的行上設置了斷點。 調試器顯示啟用的值為'true',但此方法肯定返回值'false'。

調試器為什么會看到該對象的版本不正確?

我不明白這怎么可能。 它是IntelliJ中的錯誤,還是Java調試界面中的錯誤?

==============

這是我在調試器中在調用config.isEnabled()的斷點處看到的內容:

在此輸入圖像描述

如果您在調用該方法時沒有犯任何錯誤,即,調用了不同類的方法,那么這肯定是調試器中的錯誤。 調試器似乎暫時忽略了程序中的final關鍵字。 只需嘗試刪除final關鍵字片刻,然后看看是否是這種情況。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM