the first answer makes the string value the actual empty string. Setting it to null indicates that the pointer has nothing to do. This means that if you try to execute strEmpty.Function (), in the second case this will not work.
At first, more memory is taken, but more clearly.
, . , null. ( , ..), string.empty.