How does a Layer 3 switch differ from a Layer 2 switch?

How does a Layer 3 switch differ from a Layer 2 switch?
A Layer 3 switch learns the MAC addresses that are associated with each of its ports. However, a Layer 2 switch does not.
A Layer 3 switch maintains an IP address table instead of a MAC address table.
A Layer 3 switch supports VLANs, but a Layer 2 switch does not.
An IP address can be assigned to a physical port of a Layer 3 switch. However, this is not supported in Layer 2 switches.

ooo