Some design patterns that are implemented in Java (reference: Head First Design Patterns)