Вопрос по последней задаче. Не понятно почему работают условия ">" и "<" если мы сравниваем ссылки на объекты? (Мы же не ЧИСЛА сравниваем) или вместо знаков <> при компиляции какой то метод сравнения класса Character или чтото подобное подставляется С помощью операций упорядочивания (<, >, <=, >=) можно сравнивать только числовые типы. Может при операции<> оба операнда типа Character приводятся к типу char(или int) и уже потом происходит сравнение???
public class Solution {
    public static void main(String[] args) {
        compare('a', 'a');
        compare('a', 'б');
        compare('р', 'в');
        compare('ы', 'ы');
    }

    public static void compare(Character first, Character second) {
        if (first.equals(second)) {
            System.out.println("равны");
        } else if (first > second) {
            System.out.println("больше");
        } else if (first < second) {
            System.out.println("меньше");
        } else {
            System.out.println("А как такое может быть???");
        }
    }
}