What are diffrence Between MobileCapabilityType.XYX,"xxx") and setCapability(capabilityName, value. Need some info about it

What are diffrence Between setCapability(MobileCapabilityType.XYX,“xxx”) and setCapability(“capabilityName”, “value”);.

Please provide some information on it.
@ Aleksei