java - 更改 String 字段的子类方法给我一个错误

标签 java subclass field

所以,我有一个关于议会类(class)中某些变量赋值的赋值问题。我尽可能保持基本,但是当我创建一个名为 CanadaParl 的子类时,它不允许我更改任何字符串字段。 Int 字段工作正常。对于字符串,它一直显示错误:找不到符号=变量Bob(其中Bob是我尝试输入作为PM字段名称的字符串)。我使用 BlueJ 作为我的编码界面。

这是类中方法的示例:

public void changePM(String newPM) {
    primeMinister = newPM;
}

这是更新新字符串的错误方法吗?我只是使用前面的示例来更改我看到的字段,但我不记得它是否包含字符串。

编辑:抱歉混淆了。我最初没有注意并复制了 int 方法。子类更改 int 值的方法可以正常工作,但 String 更改会出现上述错误。

这是全类同学:

public class Parliament
{
int members = 0;
int parties = 0;
public String primeMinister = "";
public String oppLeader = "";
public String speaker = "";
boolean inSession = false;
boolean majority = true;


public void changeMembers(int newValue) {
    members = newValue;
}
public void changeParties(int newValue) {
    parties = newValue;
}
public void changePM(String newPM) {
    primeMinister = newPM;
}
public void changeOL(String newOL) {
    oppLeader = newOL;
}
public void changeSpk(String newSpk) {
    speaker = newSpk;
}

}

最佳答案

你引用你的字符串吗?例如,Bob 在图形用户界面中输入为“Bob”吗? “找不到符号”似乎表明您可能不是。

这也可以解释为什么基元起作用。

关于java - 更改 String 字段的子类方法给我一个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13169521/

相关文章:

Python:如何覆盖子类中实例属性的类型提示?

Python mysql 使用变量来选择某个字段

java - 具有 reentrantLock 条件的应用程序有时会挂起

java - 如何在单次 JVM 运行中重新启动 DataNucleus?

java - Session.get 在 hibernate 中工作,同时逐步调试,但在 eclipse 中运行时不工作

java - 是否存在推断协方差

matlab - 我如何从 Matlab 中的父类(super class)继承文档?

java - Java SE 6 或 Java SE 7 中是否有非最终字段

java - 如何确保 Java 类中的字段永远不会为空

java - 匿名 Spring bean