Доступ к членам одного класса из другого класса

Попробуйте использовать max-width вместо .

2
задан JohnDoe 17 March 2019 в 22:45
поделиться

2 ответа

Вам нужно передать экземпляр start вашего класса Game в вызов функции greetPlayer в качестве параметра. Попробуйте что-то вроде этого:

import java.util.*;
public class TicTac{
  public static void main(String[] args) {
    Welcome.greet();
    Game start = new Game();
    start.inputName();
    Welcome.greetPlayer(start);
    start.show();
  }
)
class Welcome{
  public static void greetPlayer(Game call){
    System.out.println("Welcome " + " " + call.x + " and " + call.y + "\n" + "Have Fun!");
  }
}
0
ответ дан JohnDoe 17 March 2019 в 22:45
поделиться

Вы создаете объект из Game() в двух местах.

В main ():

Game start = new Game();

И в greetPlayer():

Game call = new Game();

Вы можете попытаться объединить два класса, чтобы у вас было представление игроков, получение имен и отдых. игры в одном классе:

import java.util.Scanner;

public class TicTac {
    public static void main(String[] args) {
        Game start = new Game();
        Game.greet();
        start.inputName();
        start.show();
    }
}

class Game {
    public String x, y;

    public void inputName() {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter your name Player 1:");
        String player1 = input.nextLine();
        System.out.println("Enter your name Player 2:");
        String player2 = input.nextLine();

        x = player1;
        y = player2;
    }

    public static void greet() {
        System.out.println("\tTicTac Game By Abhi:");
        System.out.println("\t  __X_|__O_|__X_");
        System.out.println("\t  __O_|__X_|__O_");
        System.out.println("\t    X |  O |  X");
    }

    public void show() {
        System.out.printf("Hi %s and %s", x, y);
    }
}
0
ответ дан Boken 17 March 2019 в 22:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: