Anonymous classes are declared and instantiated in one expression using the class instantiation syntax 'new SuperClass() { ... }' or 'new Interface() { ... }'. The extends/implements is implied by the type being instantiated, not explicitly declared.