Я новичок в Java, и, честно говоря, его фокус OOP в настоящий момент весьма обременителен для меня.
Для проекта Uni, где мы должны практиковать этот фокус, я задание создать как минимум 2 класса: один класс должен быть предназначен для клиента авиакомпании, а другой должен содержать методы для регистрации их покупки.
У меня есть основной файл, класс Persona (Person) и RegistroCompra. (Регистрация покупки) класс. Предполагается, что Person имеет все следующие атрибуты, которые я обрабатываю как частные переменные, чтобы каждый экземпляр Person мог получить один из своих. (Запрашиваемые атрибуты - это такие вещи, как личные данные, номер билета, номер места и т. Д.)
public class Persona {
private String nombrePasajero;
private String apellidoPasajero;
private String generoPasajero;
private String pasaportePasajero;
private String numTiquetePasajero;
private String numVueloPasajero;
private String destinoPasajero;
private String asientoString;
private int precioBoleto;
private int edadPasajero;
private int numAsientoPasajero;
//Constructor
public Persona(String nombre, String apellido, String genero, int edad, String pasaporte) {
nombrePasajero = nombre;
apellidoPasajero = apellido;
generoPasajero = genero;
pasaportePasajero = pasaporte;
edadPasajero = edad;
}
public void setDestino() {
destinoPasajero = RegistroCompra.obtenerDestino();
}
И мой класс RegistroCompra, предназначенный для установки данных, относящихся не к личной информации, а к информации пункта назначения, номер рейса и тому подобное. Весь набор данных в RegistroCompra должен быть получен Persona, потому что только Persona будет напечатан в основном для проверки всей информации.
public class RegistroCompra {
private String destino;
public void seleccionarDestino() {
Scanner input = new Scanner(System.in);
System.out.println("Por favor digite el destino, las opciones actuales son Nicaragua o Panama\n");
String destino = input.nextLine();
}
public String obtenerDestino() {
return destino;
}
}
Однако я получаю ошибку в Persona.setDestino ( ) метод, говорящий «на не * stati c метод obtenerDestino нельзя ссылаться из астати c context»
Я не понимаю, почему это происходит. Если я пытаюсь превратить RegistroCompra.obtenerDestino () в метод stati c, я получаю сообщение об ошибке, поскольку «destino - это переменная не stati c», но она определяется как publi c в классе RegistroCompra. .