AspectJ is an aspect-oriented extension to the Java programming language created at Xerox PARC. AspectJ supports aspects at compile-time by performing a preprocessing step. The resulting code is standard Java code, so that Java and AspectJ are compatible.

External links