1

これを行う方法を見つけようとしていたるところを検索しました。あるクラスから文字列を取得して、2 番目のクラスに入る前に変数を設定し、このクラスで文字列として使用できるようにしたいと考えています。

基本的に、別のクラスで使用したい LastName という文字列があります。

必要に応じて、ここに私のコードがあります。

最初のログイン クラス:

import java.util.Scanner;

public class Login {
public void LoginScreen() {

    Agent AgentObject = new Agent();
    Citizen CitizenObject = new Citizen();

    String FirstName;
    String LastName;

    Scanner input = new Scanner(System.in);

    System.out.println("Welcome!");
    System.out.print("Please Enter Last Name: ");
    LastName = input.next();
    System.out.print("Please Enter First Name: ");
    FirstName = input.next();
    System.out.println("Hello " + FirstName + " " + LastName);

    System.out.print("Enter Password: ");
    String userinput = input.next();
    if (userinput.equals("Timmo")) {
        AgentObject.WelcomeAgent();
    } else {
        CitizenObject.WelcomeCitizen();
    }

}
}

2 番目のエージェント クラス:

public class Agent {
public void WelcomeAgent() {
    Welcome WelcomeObject = new Welcome();
    Login LoginObject = new Login();

    System.out.println("Access Granted");
    System.out.print("Loading Data  ");
    int progress = 0;
    while (progress <= 100) {
        System.out.print(progress + " ");
        progress++;
    }
    System.out.println("    Data Loaded");

    System.out.println("Welcome Agent " + LastName);
    LoginObject.LoginScreen();
}
}

どんな助けも信じられないほど高く評価されています。ありがとう

4

3 に答える 3

3

あなたはおそらく Java にまったく慣れていないことがわかります。そのため、いくつかの基本事項が欠けている可能性があります。

おそらく、あなたのケースでは文字列をパラメーターとしてメソッドに渡すのが最善です。

public void WelcomeAgent(String lastName) {

メソッドを呼び出すときは、その値を送信します

AgentObject.WelcomeAgent(userinput);    

ところで、いくつかのコンベンションのヒント。変数と関数は小文字で始める必要があります。例えば

String lastName;

Citizen citizen = new Citizen();
于 2013-01-26T17:14:09.093 に答える
0

getterクラスでのメソッドを記述lastNameしますLogin。クラスに値を設定した後Login、このクラスオブジェクトの参照を使用する他のクラスに送信します。最後にonject.getLastName()メソッドを呼び出して使用します。

例:

LoginクラスとAgentクラスがLoginクラスで宣言されたとすると、Loginクラスの参照をAgentクラスに渡し、上記のメソッドをlastName使用してAgentクラスからアクセスします。getter

于 2013-01-26T17:28:59.310 に答える
0

クラス Agent の LastName の値にアクセスしますか?

こう変えたらどうだろう

public class Login {

 String FirstName, LastName;



public void LoginScreen() {

Agent AgentObject = new Agent();
Citizen CitizenObject = new Citizen();
....
LastName = input.next();
 ...
 }

 public String getLastName()
 { return LastName; }

そしてクラスエージェントで

LoginObject.getLastName() を使用して取得できます。

于 2013-01-26T17:22:20.143 に答える