I understand that in Java, we usually do not need to worry about deleting variables manually since garbage collection can take care of that. However, in some situations, we need to free an object before garbage collection takes effect in order to prevent memory leak. To free an object, we can simple set its reference to be null.
Now my question is, how can we manually free a primitive variable? If there is no way to manually free a primitive variable, then why, since there is a mechanism to manually free a reference variable?