Buongiorno, volevo chiedervi un consiglio su come strutturare al meglio e estendere queste classi:

codice:
abstract class MyConn{
  //questa classe contine i metodi per connettersi al database e per prelevare o inserire i dati
}

class gestione{
  //questa classe contiene dei metodi pubblici generici che vorrei utilizzare per tutte le 
sottoclassi
  //il costruttore apre la connessione mysql
}

class user extends gestione{
  //questa classe contiene metodi per loggarsi, recuperare informazioni utenti e via dicendo
  //il costruttore istanza la classe user
}
il problema è che così facendo la classe user per utilizzare i metodi di myconn deve istanziare la connessione che gestione passa ad user quando la istanza.
Come sarebbe il miglior modo di relazionarle?