-1

class のメソッドを使用してAclassの class のパラメータの値を設定するにはどうすればよいですか?BsetvarAA

public class A{

String varA;
public String getvarA() {
        return varA;
    }
public void setvarA(String varA) {
        this.varA=varA;
    }
}

public class B{

String name = "abc";
A objA = new A();
objA.setvarA(name) ; ## THIS LINES THROWS AN ERROR

}

エラーは次のとおりです。

Syntax error on token "name", VariableDeclaratorId expected after this token and Syntax error on token(s), misplaced constructs
4

5 に答える 5

3
public class A{

    String varA;
    public String getvarA() {
        return varA;
    }
    public void setvarA(String varA) {
        this.varA=varA;
    }
}

class B {
    String name = "abc";
    A objA = new A();

    B() {
        objA.setvarA(name);
    }
}
于 2013-09-04T11:49:28.930 に答える
2

あなたが 1 つのエラーについてしか文句を言わないことに驚いています。

投稿したコードにはさまざまなエラーがあります。

  • Stringはありませんstring(大文字と小文字は重要です)
  • メソッドsetvarAでは、これは間違っthis.varA = var.A;ています: である必要があります:this.varA = varA;
  • 後にセミコロンを忘れたString name = "abc"
  • ()後に忘れたnew AA objA = new A();
于 2013-09-04T11:46:48.687 に答える
0

改訂されたコード:

public class A{

        String varA; //<-String, not string
        public String getVarA() { 
                return varA;
            }
        public void setVarA(String varA) {
                this.varA=varA; //<- var.A not valid
            }
        }

        class B{
          B(){ //<- Need to write this code in a method or constructor
            String name = "abc"; //<- Semi-colon?
            A objA = new A(); //<- what about parenthesis?
            objA.setVarA(name); //<- Semi-colon?
            }
        }
于 2013-09-04T11:45:58.347 に答える
0

修正された完全なコードは次のとおりです。

public class A{

    String varA;

    public String getvarA() {
        return varA;
    }

    public void setvarA(String varA) {
        this.varA = varA;
    }
}

public class B{

    public B(){
        String name = "abc"
        A objA = new A();
        objA.setvarA(name);
    }
}

もちろん、両方のクラスは、A.java と B.java という別のファイルに入れる必要があります。これらのファイルのいずれかに main メソッドを追加して、B を作成します。

于 2013-09-04T11:48:13.107 に答える
-1

そのはずA objA = new A();

  • これを行うことにより、クラスAのオブジェクトを作成し、それに参照変数をA割り当てる objAクラスのコンストラクターを呼び出します。
  • また、objA.setvarA(name);. ここでセミコロンが抜けています。
  • に変更stringしますString。java は大文字と小文字を区別します。Stringクラスです。
  • this.varA=var.A;に変更this.varA = varA;
  • ここにセミコロンがありませんString name = "abc"。への変更String name = "abc";
  • setter メソッドに余分なセミコロンを入れました。それを修正してください。
  • また、いくつかのinitブロックまたはコンストラクターまたはメソッドからメソッドを呼び出す必要があります

    B() { objA.setvarA(name); }

于 2013-09-04T11:43:43.870 に答える