C#์ž„, ์œ ๋‹ˆํ‹ฐ ํ•˜๋‹ค๊ฐ€ ๊ฐ์ฒด์ง€ํ–ฅ์ด ์ง€์ผœ์ง€๋Š”๊ฒŒ ๋งž๋Š”๊ฑด์ง€ ์˜๋ฌธ์Šค๋Ÿฌ์›Œ์„œ ์งˆ๋ฌธํ•ด๋ด„


public class A

{

public A(string name)

{

this.name = name;

}


public void Test(A obj)

{

๋Œ€์ถฉ obj.name ์ ‘๊ทผํ•ด์„œ ๋งํ•ด์ฃผ๊ธฐ();

}


private string name;

}


public class Main

{

static void main(string[] args)

{

A a = new A("์•จ๋Ÿฐ");

A b = new A("๋…ธ์ด๋งŒ");


a.Test(b);

}

}


์ด๋ ‡๊ฒŒ ํ–ˆ์„ ๋•Œ a์—์„œ b์˜ private์ธ name ํ•„๋“œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๊ฒŒ ์ •์ƒ์ธ๊ฑฐ์ž„?

๊ฐ์ฒด์ง€ํ–ฅ ๋ฐฐ์šธ ๋•Œ๋Š” ์ •๋ณด ์€๋‹‰๋•Œ๋ฌธ์— private๋กœ ์™ธ๋ถ€์—์„œ ์ ‘๊ทผ ๋ชปํ•˜๊ฒŒ ํ•œ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ ๋ง‰์ƒ ์ฝ”๋“œ ์งœ๋ณด๋‹ˆ๊นŒ ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค์—์„œ ํƒœํด๋„ ์•ˆ ๊ฑธ์–ด์„œ ๊ดœ์ฐฎ์€๊ฑด๊ฐ€ ์‹ถ์Œ