I feel like I have to not answer your explicit question, but instead challenge the premise and ask you to revise your understanding of what objects are vs. what variables are. Take this snippet:
object[,] s3l4 = new object[0,0];
object[,] s4l2 = s3l4;
In this case, you have one object - the initialized array in the first line - but two variables that both point to it. In this case, what would be the "name" of that array? s3l4
or s4l2
? The answer is "neither", because both of these strings refer to a variable name inside a method, a local name that refers to the object in memory. After compiling, these names usually go away - they're used by you and your code to refer to it, but the CPU has no need for this name, it just cares about memory addresses.
So I'm guessing, if you need those strings, that you're somehow conflating between a specific object in memory, and the ad-hoc handle used to refer to it, which is probably not your intention.