public class AddRunnable implements Runnable{
private Scanner sc;
private ContactStore cs;
private Contact contact;
private String fn,ln,pn;
public AddRunnable(Scanner sc, ContactStore cs) {
this.sc = sc;
this.cs = cs;}
@Override
public void run() {
System.out.println("INSERT First name: ");
fn = sc.nextLine();
System.out.println("INSERT Last name: ");
ln = sc.nextLine();
System.out.println("INSERT Phone number: ");
pn = sc.nextLine();
contact.setFirstName(fn);
contact.setLastName(ln);
contact.setPhoneNumber(pn);
cs.add(contact);
System.out.println("new ID is: " + contact.getId());
System.out.println();
System.out.println();}
main програма
switch (line) {
case "add":
thread = new Thread(new AddRunnable(sc,cs));
thread.start();
thread.join();
break;
когда я запускаю и ввожу "add" ловит Exception
Exception in thread "Thread-5" java.lang.NullPointerException
at ge.gtu.java.hw326.runnables.AddRunnable.run(AddRunnable.java:23)
at java.lang.Thread.run(Thread.java:745)
что делать в чем ошибся?