状況:私は最近、雇用主が初級レベルの候補者に複雑な参照問題 (図示されていません) を解決するように求めている記事と、スタックとマネージ ヒープに関する質問に出くわしました。私は個人的な理解のためにこれらの概念を学ぶことに少し時間を費やしましたが、これらが「初心者レベル」の知識と見なされていることに気づきませんでした. CS に同調する CIS メジャーであるため (私が知っている大きな違い)、これらの概念は教えられていません。
質問開発者がオブジェクト参照を別の参照に割り当てるのはなぜですか? もっと簡潔に言うと、インタビューのシナリオで説明されているように、なぜ開発者は何十ものリファレンスをめくってしまうのでしょうか? これは単に主題の理解度をテストするだけの問題ですか、それともこの「参照フリップフロップ」は「日常的な」開発で使用される慣行ですか?
using System;
namespace QuickConsoleTesting
{
class Program
{
static void Main()
{
//Instantiate two new Person objects on the heap
Person person1 = new Person() { Name = "Jim" };
Person person2 = new Person() { Name = "Todd" };
Person person3 = person1;
Person person4 = new Person() { Name = "Julie" };
//Flip-flop reference variables
person4 = person2;
person1 = person3;
//Display results
Console.WriteLine(person1.Name);
Console.WriteLine(person2.Name);
Console.WriteLine(person3.Name);
Console.WriteLine(person4.Name);
/* ======================================
* Results displayed: Jim, Todd, Jim, Todd
* ===================================== */
//Hold console window
Console.Read();
}//END OF MAIN
}//END OF PROGRAM
class Person
{
private string name = "";
public string Name
{
get { return name; }
set { name = value; }
}
}//END OF PERSON
}//END OF NAMESPACE