Your gameplay class exposes a UPROPERTY that lets your designers specify a particular asset on either the archetype via Blueprint inheritance or via an instance placed in the world. This is the most common case for asset references and is exposed via the UPROPERTY macro. The first two sections following cover hard references with the remaining sections exploring soft references.
You can think of references in two ways: a hard reference where object A refers to object B and causes object B to be loaded when object A is loaded and a soft reference where object A refers to object B via an indirect mechanism such as the string form of the path to the object.
Unreal Engine 4 provides a number of mechanisms to control how an asset is referenced and by extension loaded into memory.