Создал массив классов и пытаюсь туда записать объекты, но вылезает такая ошибка: Exception in thread "main" java.lang.NullPointerException: Cannot assign field "code" because "h[i]" is null
at Main.main(Main.java:22). Что значит и как исправить?
1 класс обрезал т.к. по знакам все не влезает.
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{
int b=-1;
int i=0,o=0,p=0;
Scanner scanner = new Scanner((System.in));
зарпутевки[] h = new зарпутевки[10];
санатории[] k = new санатории[10];
оздоровительные[] l = new оздоровительные[10];
System.out.println("1 - Зарубежные путевки\n2 - Санатории\n3 - Детские оздоровительные\n4 - Вывод всех путевок\n0 - Выход");
b=scanner.nextInt();
switch (b)
{
case 0:
{
break;
}
case 1:
{
System.out.println("Введите код путевки");
h[i].code=scanner.nextInt();
System.out.println("Введите фамилию клиента");
h[i].фамилия=scanner.toString();
System.out.println("Введите название пансионата");
h[i].название=scanner.toString();
System.out.println("Введите номер");
h[i].number=scanner.nextInt();
System.out.println("Введите вид жилья");
h[i].виджилья=scanner.toString();
System.out.println("Введите дату заезда");
h[i].date1=scanner.nextInt();
System.out.println("Введите дату выезда");
h[i].date2=scanner.nextInt();
System.out.println("Введите количество человек");
h[i].quantity=scanner.nextInt();
System.out.println("Введите цену");
h[i].price=scanner.nextInt();
System.out.println("Введите номер загранпаспорта");
h[i].загпаспорт = scanner.nextInt();
System.out.println("Введите номер страховки");
h[i].страховка = scanner.nextInt();
i++;
b=scanner.nextInt();
}
case 2:
{
System.out.println("Введите код путевки");
k[o].code=scanner.nextInt();
System.out.println("Введите фамилию клиента");
k[o].фамилия=scanner.toString();
System.out.println("Введите название пансионата");
k[o].название=scanner.toString();
System.out.println("Введите номер");
k[o].number=scanner.nextInt();
System.out.println("Введите вид жилья");
k[o].виджилья=scanner.toString();
System.out.println("Введите дату заезда");
k[o].date1=scanner.nextInt();
System.out.println("Введите дату выезда");
k[o].date2=scanner.nextInt();
System.out.println("Введите количество человек");
k[o].quantity=scanner.nextInt();
System.out.println("Введите цену");
k[o].price=scanner.nextInt();
System.out.println("Введите номер медицинского полиса");
k[o].медполис = scanner.nextInt();
System.out.println("Введите номер диагноза");
k[o].диагноз = scanner.toString();
System.out.println("Введите направление");
k[o].направление = scanner.toString();
o++;
b=scanner.nextInt();
}
case 3:
{
System.out.println("Введите код путевки");
l[p].code=scanner.nextInt();
System.out.println("Введите фамилию клиента");
l[p].фамилия=scanner.toString();
System.out.println("Введите название пансионата");
l[p].название=scanner.toString();
System.out.println("Введите номер");
l[p].number=scanner.nextInt();
System.out.println("Введите вид жилья");
l[p].виджилья=scanner.toString();
System.out.println("Введите дату заезда");
l[p].date1=scanner.nextInt();
System.out.println("Введите дату выезда");
l[p].date2=scanner.nextInt();
System.out.println("Введите количество человек");
l[p].quantity=scanner.nextInt();
System.out.println("Введите цену");
l[p].price=scanner.nextInt();
System.out.println("Введите номер медицинского полиса");
l[p].age = scanner.nextInt();
System.out.println("Введите номер диагноза");
l[p].свидорож = scanner.nextInt();
System.out.println("Введите направление");
l[p].пол = scanner.toString();
p++;
b=scanner.nextInt();
}
case 4:
{
if(i!=0)
{
for(int m=0;m<i;m++)
{
h[m].toString();
}
}
if(o!=0)
{
for(int n=0;n<o;n++)
{
k[n].toString();
}
}
if(p!=0)
{
for(int c=0;c<p;c++)
{
l[c].toString();
}
}
b=scanner.nextInt();
}
}
}
}
class путевки
{
int code, number, quantity, date1, date2, price;
String фамилия, название, виджилья;
public путевки()
{
}
public путевки(int code, String фамилия, String название, int number, String виджилья)
{
this.code = code;
this.фамилия = фамилия;
this.название = название;
this.number = number;
this.виджилья = виджилья;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getФамилия() {
return фамилия;
}
public void setфамилия(String фамилия) {
this.фамилия = фамилия;
}
public String getназвание() {
return название;
}
public void setназвание(String название) {
this.название = название;
}
public int getnumber() {
return number;
}
public void setnumber(int number) {
this.number = number;
}
public String getвиджилья() {
return виджилья;
}
public void setвиджилья(String виджилья) {
this.виджилья = виджилья;
}
public int getDate1() {
return date1;
}
public void setDate1(int date1) {
this.date1 = date1;
}
public int getDate2() {
return date2;
}
public void setDate2(int date2) {
this.date1 = date2;
}
public int getquantity() {
return quantity;
}
public void setquantity(int quantity) {
this.quantity = quantity;
}
public int getprice() {
return price;
}
public void price(int price) {
this.price = price;
}
public String toString()
{
return "Код путевки: " + code + "\nФамилия клиента: " + фамилия + "\nНазвание пансионата: "+название+"\nНомер: "+number+"\nВид жилья: "+виджилья+"\nДата заезда: "+date1+"\nДата выезда: "+date2+"\nКоличество человек: "+quantity+"\nЦена: "+price;
}
}
class зарпутевки extends путевки
{
int загпаспорт, страховка;
public int getзагпаспорт() {
return загпаспорт;
}
public void setзагпаспорт(int загпаспорт) {
this.загпаспорт = загпаспорт;
}
public int getстраховка() {
return страховка;
}
public void setзстраховка(int зстраховка) {
this.страховка = страховка;
}
public String toString()
{
return "Код путевки: " + code + "\nФамилия клиента: " + фамилия + "\nНазвание пансионата: "+название+"\nНомер: "+number+"\nВид жилья: "+виджилья+"\nДата заезда: "+date1+"\nДата выезда: "+date2+"\nКоличество человек: "+quantity+"\nЦена: "+price+"\nНомер загран паспорта: "+загпаспорт+"\nНомер страховки: "+страховка;
}
}
class санатории extends путевки
{
int медполис;
String диагноз, направление;
public int getмедполис() {
return медполис;
}
public void setмедполис(int медполис) {
this.медполис = медполис;
}
public String getдиагноз() {
return диагноз;
}
public void setдиагноз(String диагноз) {
this.диагноз = диагноз;
}
public String getнаправление() {
return направление;
}
public void setнаправление(String направление) {
this.направление = направление;
}
public String toString()
{
return "Код путевки: " + code + "\nФамилия клиента: " + фамилия + "\nНазвание пансионата: "+название+"\nНомер: "+number+"\nВид жилья: "+виджилья+"\nДата заезда: "+date1+"\nДата выезда: "+date2+"\nКоличество человек: "+quantity+"\nЦена: "+price+"\nНомер медицинского полиса: "+медполис+"\nДиагноз: "+диагноз+"\nНаправление: "+направление;
}
}