您好,我有一个非常简单的类定义如下
public class Pokus {
public static String loginToken;
public String neco = "neco";
public Pokus() {
}
public static String getLoginToken() {
return loginToken;
}
public static void setLoginToken(String loginToken) {
Pokus.loginToken = loginToken;
}
}
当我创建此类的实例时
Pokus pokus = new Pokus();
pokus.setLoginToken("bla1212");
在调试器中,我可以看到对象pokus有一个字段/变量叫做#34; neco"但不是那个静态变量" loginToken"。
有没有办法看到静态变量以及非静态变量?
答案 0 :(得分:11)
谢谢大家,我知道所有这些,但不知道调试器正在考虑这一点。可以选择显示静态字段设置>构建,执行,部署>调试器>数据视图>爪哇
答案 1 :(得分:2)
调试器正确显示它,<form #form="ngForm">
<div *ngFor="item in items">
<input name="product-{{item.id}}"
[(ngModel)]="item.qty"
#????="ngModel"
validateQuantity>
<button (click)="addItemToCart(item)"
[disabled]="!????.valid">Add to cart</button>
</div>
<button (click)="addAll()"
[disabled]="!form.valid">Add all</button>
</form>
是类pokus
的实例,因此它具有类Pokus
的标准方法和属性,静态方法和属性在Class中不在Class的实例中。对于从类Pokus
创建的每个对象(或者如果它们是公共的,则为程序中的每个组件)共享静态属性,因此调试器不会将它们显示为单个实例的属性。
显示静态变量检查类而不是实例。调试器在断点处停止时您可以使用控制台并写入Pokus
,您将看到当前值。控制台在调试器中可用 - http://imgur.com/a/nHfEo。
答案 2 :(得分:1)
静态变量对于类的所有实例具有相同的值。此外,它们应该使用类而不是类的实例来访问。在Java中,当你将某些东西声明为静态时,你会说它是类的成员,而不是对象(因此只有一个)。因此,在对象上访问它是没有意义的,因为该特定数据成员与该类相关联。 这就是我认为调试器没有显示并且它是正确行为的原因
答案 3 :(得分:0)
您可以右键单击调试器的 Variables
区域并选择 Customize Data Views...
在那里,您可以选择添加静态和最终静态字段。