AspectJ — аспектно-ориентированное расширение языка Java, созданное компанией PARC. Язык доступен в проектах Eclipse Foundation как отдельно, так и в составе среды разработки Eclipse. Язык стал де-факто стандартом аспектно-ориентированного программирования, подчёркивая простоту и удобство для пользователей. С первого выпуска язык использует Java-подобный синтаксис.
AspectJ расширяет синтаксис Java, то есть все программы, написанные на Java, будут корректными программами AspectJ, но не наоборот, так как могут включать специальные конструкции, называемые аспектами, которые могут содержать несколько частей, не доступных обычным классам.
Методы расширения позволяют программисту добавлять методы, поля и интерфейсы в существующие классы. Данный пример добавляет метод acceptVisitor (см. шаблон проектирования посетитель) в код класса Point: