Главное отличие ключевых слов this и super в Java в том, что this представляет текущий экземпляр класса, в то время как super — текущий экземпляр родительского класса. 1
this используется для обращения к текущему объекту, например, для доступа к полям и методам объекта. 2 super — для обращения к родительскому классу (суперклассу) текущего объекта, часто в случаях, когда требуется вызвать конструктор суперкласса или переопределить метод суперкласса. 2
Таким образом, this ссылается на текущий экземпляр класса, а super — на текущий экземпляр родительского класса. 1
Ещё this и super в Java используются для обращения к переменным экземпляра класса и его родителя. 1 Например, внутри класса для вызова своего конструктора без аргументов используется this(), тогда как super() — для вызова конструктора без аргументов родительского класса. 1