Sort ArrayList de objetos personalizados por propriedade

Li sobre a classificação de ArrayLists usando um comparador, mas em todos os exemplos que as pessoas usavamcompareTo que, de acordo com algumas pesquisas, é um método para String

Eu queria classificar um ArrayList de objetos personalizados por uma de suas propriedades: um objeto Date getStartDay()). Normalmente eu os comparo poritem1.getStartDate().before(item2.getStartDate()) então eu queria saber se eu poderia escrever algo como:

public class CustomComparator {
    public boolean compare(Object object1, Object object2) {
        return object1.getStartDate().before(object2.getStartDate());
    }
}

public class RandomName {
    ...
    Collections.sort(Database.arrayList, new CustomComparator);
    ...
}

questionAnswers(25)

yourAnswerToTheQuestion