For immutable types (like strings are), the assignment operator copies content instead of creating another reference to the same object.
Therefore
strOriginal1 = strOriginal2;
doesn't make
strOriginal1
reference the same object as
strOriginal2
. Instead they stay separate objects which have identical values at the moment. Later changes to the latter don't affect the former.