Attualmente sto lottando con un codice GUI in cui ho una tabella le cui righe corrispondono ad un oggetto, diciamo un oggetto Person. Quando la tabella viene inizializzata, riempie la tabella con gli oggetti Person di cui è a conoscenza - ad esempio Bob, Andy e Tom. Il resto degli elementi delle righe ( row.getItem()
) sono nulli. In questo particolare framework GUI, non è possibile evidenziare / selezionare le righe che sono getItem()
restituisce null - ma nel mio caso d'uso particolare voglio consentire questa funzionalità.
Pertanto, dopo aver inizializzato la tabella, voglio impostare le righe dopo Bob, Andy e Tom su un oggetto Person che rappresenta una Persona vuota / nulla (non inizializzata di per sé), quindi il modello di oggetto nullo che entra in gioco. I pattern si combinano perché la classe Person utilizza il modello di build fluente per costruire istanze Person, quindi ho pensato di combinare i due in questo modo:
for (rows in table) {
if (row.getItem() == null) {
row.setItem( Person.PersonBuilder().nullObject().build() );
}
}
Sto cercando feedback / consigli sui meriti di questa scelta, e sono benvenuto alle alternative se questo approccio è sbagliato.