Niemożność odczytania zmiennych po próbie użycia konstruktora super()

0

Witam.
Aktualnie korzystając z kursu Java wszedłem na temat "konstrukcji super()".
Chciałem zrobić sobie powtórzenie i wykorzystać wcześniej poznane rzeczy w jednym projekcie.
Problem polega na tym, że nie mogę odczytać z poziomu klasy main() zmiennych zawartych w innych klasach, w których używałem konstrukcji super(). Lub np. program wypisze tekst, który za chwilę znika.

Zadaniem programu jest odczytanie wartości w pliku, po czym zapisanie je w zmiennych klas.
Klasa Sprzątaczka korzysta z konstruktora zawartego w klasie Pracownik.[ super() ]
Następnie z poziomu klasy main() zmienne mają zostać odczytane z tych klas.

Otrzymuję komunikat:

Exception in thread "main" java.util.InputMismatchException
	at java.util.Scanner.throwFor(Unknown Source)
	at java.util.Scanner.next(Unknown Source)
	at java.util.Scanner.nextInt(Unknown Source)
	at java.util.Scanner.nextInt(Unknown Source)
	at Firma.main(Firma.java:20)

Oto kod:

import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;

public class Firma {

	public static void main (String[] args) throws FileNotFoundException {
		
	Scanner input = new Scanner (new File ("firma.txt") );
	
	Pracownik prac = new Pracownik(input.nextLine(), input.nextLine(), input.nextInt() );
	System.out.println(prac.getImie()+" "+prac.getNazwisko()+" "+prac.getWyplata()+"\n");

	Sprzataczka sprz = new Sprzataczka(input.nextLine(), input.nextLine(), input.nextInt());
	System.out.println(sprz.getImie()+" "+sprz.getNazwisko()+" "+sprz.getWyplata()+"\n");

	input.close();
	}
}
public class Pracownik {

	private String Imie;
	private String Nazwisko;
	private int Wyplata;
	
	public Pracownik (String a, String b, int c){
		this.Imie = a;
		this.Nazwisko = b;
		this.Wyplata = c;
	}
	
	String getImie() {return Imie;}
	String getNazwisko() {return Nazwisko;}
	int getWyplata() {return Wyplata;}
}
public class Sprzataczka extends Pracownik {

	public Sprzataczka (String Imie, String Nazwisko, int Wyplata){
		
		super(Imie, Nazwisko, Wyplata);
	}
}

Plik z którego są pobierane dane:

Jan
Kowalski
1500
Pani
XYZ
1000

W czym tkwi problem?

dodanie znaczników <code> - fp

1

W którym miejscu pliku firma.txt jest Twoim zdaniem "głowica czytająca" po tej instrukcji:

Pracownik prac = new Pracownik(input.nextLine(), input.nextLine(), input.nextInt() );

Musisz przejść do nowego wiersza.

    Pracownik prac = new Pracownik(input.nextLine(), input.nextLine(), input.nextInt() );
    input.nextLine();
    Sprzataczka sprz = new Sprzataczka(input.nextLine(), input.nextLine(), input.nextInt());
0

Tak. Właśnie to blokowało resztę programu.
Dziękuję za odpowiedź!

1 użytkowników online, w tym zalogowanych: 0, gości: 1