Не могу разобраться с конструкторами и ссылочными переменными

Игра в угадывание загаданного числа по очереди, вводя с клавиатуры двумя игроками. Код работает, но не по заданию.

По заданию нужно произвести инициализацию полей объектов и методов с помощью конструктора, но я не пойму как это здесь можно сделать. А так же хочу понять как вместо

System.out.println("The first is a winner " + checkNumOne);

было

System.out.println("Имя игрока которое ввел в начале игры" + is a winner " + checkNumOne); 

пробывал через объект oneWin класса GuessNumberTest сделать так:

System.out.println(oneWin.nameFirst + is a winner " + checkNumOne); 

но выдает ошибку что он не видит oneWin.nameFirst.

import java.util.Scanner;
import java.util.Random;

public class GuessNumber {

    void play() {

    int numberOne; // переменная для хранения введенного числа
    int numberTwo;

    boolean checkNumOne = false; // переменная проверки числа
    boolean checkNumTwo = false;

    Random random = new Random();
    int compNumber = random.nextInt(100) + 1;
    System.out.println("My number in my head... Let guess!");

    while(true) {
        System.out.println("You must guess the number " + compNumber);

        Scanner scanOne = new Scanner(System.in);
        Player playerOne = new Player();
        playerOne.number = scanOne.nextInt();
        System.out.println("I think this number " + playerOne.number);

        numberOne = playerOne.number;
        System.out.println("The first player thinking this number  " + numberOne);

        if(playerOne.number == compNumber) {
            checkNumOne = true;
        }

        Scanner scanTwo = new Scanner(System.in);
        Player playerTwo = new Player();
        playerTwo.number = scanTwo.nextInt();
        System.out.println("I think this number " + playerTwo.number);

        numberTwo = playerTwo.number;
        System.out.println("The second player thinking this number  " + numberTwo);

        if(playerTwo.number == compNumber) {
            checkNumTwo = true;
        }

        GuessNumberTest oneWin = new GuessNumberTest();
        if(checkNumOne) {
            System.out.println("The first is a winner " + checkNumOne);
            break;
        }

        GuessNumberTest twoWin = new GuessNumberTest();
        if(checkNumTwo) {
            System.out.println("The second is a winner " + checkNumTwo);
            break;
        } else {
            System.out.println("One more time");
        }
    } // while true

    }
}

public class Player {   
    int number;
    String name;
}

import java.util.Scanner;

public class GuessNumberTest {

    public static void main(String[] args) {

        Player playerOne = new Player();
        Player playerTwo = new Player();

        Scanner scan = new Scanner(System.in);

        String nameFirst = playerOne.name;
        playerOne.name = scan.nextLine();

        String nameSec = playerTwo.name;
        playerTwo.name = scan.nextLine();

        GuessNumber guessNum = new GuessNumber();
        guessNum.play();
    }
}

Ответы (0 шт):