Хорошо, с пересмотренным вопросом, я думаю, у меня есть лучшее представление о том, что вы хотите сделать.
Для этой программы требуется вспомогательный класс для хранения сводной информации о проверке. Примерно так:
public class ReviewInfo {
public int numFiveStars = 0;
public int numFourStars = 0;
public int numThreeStars = 0;
public int numTwoStars = 0;
public int numOneStars = 0;
}
Это дает вам один аккуратный пакет, в котором вы можете хранить все данные, которые вы читаете с клавиатуры.
Затем обновите свой класс keyboardInput, чтобы метод fiveStar () сохранял все ваши данные в объекте ReviewInfo и возвращал этот объект обратно в вызывающий код:
import java.util.Scanner;
public class keyboardInput extends reviewHandler {
public ReviewInfo fiveStar() {
Scanner stars = new Scanner(System.in);
ReviewInfo info = new ReviewInfo();
System.out.println("Number of 1 star reviews: ");
info.numOneStars = stars.nextInt();
System.out.println("Number of 2 star reviews: ");
info.numTwoStars = stars.nextInt();
System.out.println("Number of 3 star reviews: ");
info.numThreeStars = stars.nextInt();
System.out.println("Number of 4 star reviews: ");
info.numFourStars = stars.nextInt();
System.out.println("Number of 5 star reviews: ");
info.numFiveStars = stars.nextInt();
return info;
}
}
И теперь вы можете упростить метод reveiwHandler.reviews (), чтобы он использовал вспомогательный класс ReviewInfo:
...
keyboardInput keyboard = new keyboardInput();
ReviewInfo info = keyboard.fiveStar();
int oneStar = info.numOneStars;
int twoStar = info.numTwoStars;
int threeStar = info.numThreeStars;
int fourStar = info.numFourStars;
int fiveStar = info.numFiveStars;
...
И оттуда тебе хорошо идти, я думаю.
В вашем вопросе вы спрашиваете, как делить переменные между классами. Есть способы сделать это (статические переменные, внутренние классы и различные другие методы), но это почти всегда плохая идея. Если вы посещаете занятия или читаете книгу, я уверен, что вы слышали / читали термин «инкапсуляция». Глобальные переменные или переменные, которые совместно используются классами, нарушают инкапсуляцию, и если вы полагаетесь на них, вы рискуете создать код, над которым очень трудно работать или использовать. Обычно глобальные проекты не создают проблем для небольших проектов, подобных этому, но для чего-то большего они быстро сожгут вас.
Надеюсь, это ответит на ваш вопрос. Удачи!
-Крис