AspectJ is an easy-to-use-and-learn Java compatible framework to integrate cross-cutting implementations. AspectJ has been developed at PARC. Nowadays, it is one of the most famous AOP framework due to its simplicity; yet, it has the power to support component modularization. It can be used to apply AOP on fields that are static or non-static, and constructors and methods that are private, public, or protected.