Ah Ilton! Apenas uma observação para não gerar confusão... da forma como coloquei acima, o que está sendo "usado" não é Compator.comparing(), mas sim, uma implementação mais enxuta de um Comparator..
        // explicitamente com Comparator
        palavras.sort(new Comparator<String>() {
            @Override
            public int compare(String palavra1, String palavra2) {
                return palavra1.compareTo(palavra2);
            }
        });
        // usando lambda
        palavras.sort((palavra1, palavra2) -> palavra1.compareTo(palavra2));
        // usando method reference
        palavras.sort(String::compareTo);
O Comparator.comparing() recebe uma Function o que permitiria usar method references num caso como o que segue abaixo, para ordenar pelo tamanho da String.
        // usando a implementação de uma Function
        palavras.sort(Comparator.comparing(new Function<String, Integer>() {
            @Override
            public Integer apply(String palavra) {
                return palavra.length();
            }
        }));
        // usando lambda
        palavras.sort(Comparator.comparing(palavra -> palavra.length()));
        // usando method references
        palavras.sort(Comparator.comparing(String::length));