E 'possibile in qualche modo iterare su ogni metodo di un oggetto, con il nome che inizia con "get"? Voglio confrontare due oggetti personalizzati molto complessi, che hanno campi costituiti da strutture dati basate su altri oggetti personalizzati. Quello che voglio fare è ottenere un codice hash del risultato di ogni metodo get e confrontare se sono uguali per ogni campo.Iterating su tutti i metodi che hanno il nome che inizia con "get" - confronto degli oggetti
Scusate se non è molto comprensibile, se avete domande si prega di chiedere. Grazie per qualsiasi aiuto e suggerimenti
ho pensato a qualcosa di simile:
for(method m : gettersOfMyClass){
boolean same = object1.m.hashCode() == object2.m.hashCode()
}
Così si vuole fare qualcosa di simile ottenere *** () ..write? .. – Ahmad
... Stai cercando di costruire un'implementazione riflessiva di 'hashCode()' o 'equals'? C'è un motivo per cui non puoi semplicemente farli generare da IDE? –
getters - http://stackoverflow.com/questions/8524011/java-reflection-how-can-i-get-the-all-getter-methods-of-a-java-class-and-invoke – ant