Ciao a tutti, avrei 1 domanda, posto prima i pezzi di codice

Nel main istanzio un oggetto
codice:
Venditore venditore2 = new Venditore(utente2, "Paypal, accredito bancario, contrassegno", "Negozio");
Nella classe Venditore
codice:
public class Venditore extends Utente {
   private Utente user;
   private String telefono;
   private String pagamentiAccettati;
   private String tipo;
 
   public Venditore(Utente utente, String telefono, String pagamenti, String tipo){
     super(utente);
     setTelefono(telefono);
     setPagamentiAccettati(pagamenti);
     setTipo(tipo);
   }

   public Venditore(Utente utente, String pagamenti, String tipo){
     super(utente);
     setPagamentiAccettati(pagamenti);
     setTipo(tipo);
   }
 
   public void setTelefono(String telefono){
     this.telefono=telefono;
   }

   public void setPagamentiAccettati(String pagamenti){
     this.pagamentiAccettati=pagamenti;
   }

   public void setTipo(String tipo){
     if (tipo=="Negozio" || tipo=="negozio" || tipo=="privato" || tipo=="Privato")
        this.tipo=tipo;
   }
Ora questo metodo setTipo(String tipo) è imperfetto, perchè tipo nel caso in cui la parola non sia privato o negozio, assume il valore di default per le stringhe che è null. L'oggetto è istanziato lo stesso dunque.

Io NON voglia che sia istanziato, cioè metterei un else con una frase a schermo che impedisca di istanziare venditore2

Avevo pensato di lanciare un'eccezione da me creata ma non mi viene in mente cosa fare per dire: NON istanziare venditore2.

Qualcuno mi aiuta? Grazie