public interface IRead
{
void Read();
}
์ด๋ ๊ฒ ์๋ค๊ณ ์น๋ฉดย
class B : A
{
public voidย IRead.Read()ย ย <==== ์์ public์ ๋ถ์ด๋๊น ์ด ํญ๋ชฉ์ public ํ์ ์๊ฐ ์ ํจํ์ง ์๋ค๋ฉด์ ์ค๋ฅ๊ฐ ๋จ..ย
{
}
voidย IRead.Read()ย ย <==== ์ด๊ฑฐ๋ ๋จ ๊ทธ๋์ ๋ฐ๊นฅ์์ Readํจ์๋ฅผ ํธ์ถ์ ๋ชปํจ (์?,,)
{
}
๋ง์ฝ์ ์์ IRead๋ฅผ ๋ถ์ด์ง ์์ผ๋ฉดย
public voidย Read()ย ย <==== public ๋ถ์ฌ๋ ๋ฌธ์ ์์ด์ ์ธ๋ถ์์ ํธ์ถ ๊ฐ๋ฅ. (์ ์ ๋ฐ๋ผ๊ฐ๋ณด๋ฉด IRead ์ธํฐํ์ด์ค ๊ตฌํ ํจ์ ๋ง์)ย
{
}
}
๋์ฒด ์ ์ด๋ฐ ํ์์ด ๋ฐ์ํ๋๊ฑฐ?..
์์ ์ธํฐํ์ด์ค ์ด๋ฆ ๋ถ์ด๊ณ ์ ๋ถ์ด๊ณ ์ด๋ค ์ฐจ์ด๊ฐ ์๋๊ฑฐ์?
์๋ฌธ์๋ต : ๋์ถฉ ์ฐพ์๋ณด๋๊น ๋ช ์์ ๊ตฌํ์ ์ ๊ทผ์ ํ์๋ฅผ ๋ถ์ผ ์ ์๋ค๊ณ ํจ
๊ทธ๋ฆฌ๊ณ ๋ช ์์ ๊ตฌํ๋ ๋ฉ์๋๋ ์บ์คํ ํด์ ์ ๊ทผํด์ผ ํ๋ค๋ค...
์์ ์ ๊ทผ์ ํ์ ์๋ถ์ด๋ฉด private๊ฐ ๋จ ์์์์ ๋ถ๋ชจ protected๋ฅผ ์์์ด public์ผ๋ก ๋ชป๋ฐ๊พธ๋ฏ์ด private์ธ ๋ฉ์๋๋ฅผ public์ผ๋ก ๋ฐ๊พธ๋ ค๊ณ ํด์ ๊ทธ๋ผ. ์ธํฐํ์ด์ค ํจ์ ์์ public ๋ถ์ฌ์ฃผ๋ฉด ๋.
์ธํฐํ์ด์ค ๋ฉ์๋๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก public์ด๋ผ ๊ทธ ๋ฌธ์ ๊ฐ ์๋์์ (public์ผ๋ก ๊ณ ์ณ๋ ์๋) ์์ ๋ด๊ฐ ์ด ๋๊ธ์ด ์ด์ ์์
์ ๊ทธ๋ ๊ตฌ๋ ์ฌ์ฉํด๋ณธ์ ์ด ์์ด์ ๋ชฐ๋๋ค...
99%๋ ์บก์ํ ํด์ผํ ๋ ๋ช ์์ ๊ตฌํ์ ์. ๊ทธ๋ฆฌ๊ณ ์จ๊ฒจ์ง ๋น๋ฐ์ด ํ๋ ์๋๋ฐ... ๊ทธ๊ฒ ๋ญ๋๋ฉด... ๊ทธ๋ฆฌ๊ณ ๋๋ถ๋ถ์ ์์ฉ ๋๋ ํ ๋๊ตฌ๋ค์ ๋ช ์์ ์ผ๋ก ๊ตฌํ๋ ๋ฉค๋ฒ๋ช ๋๋ ํ๋ฅผ ๊ธฐ์ ์ ์ผ๋ก ์ง์ํ์ง ๋ชปํ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ ์๊ฐํด์ ์ฌ์ฉํด์ผํจ.
๊ทธ๋ ๊ตฌ๋.. ๋๋ฌด ์ด๋ ค์ด๊ฒ
https://stackoverflow.com/questions/38415461/c-sharp-error-does-not-implement-interface-member
์ด๋ฐ๊ฑฐ
๋ณด๋ฉด ์์์๋ฏ์ด ์์ฉ ๋๋ ํ ๋๊ตฌ๋ค์ 99% ๊ธฐ์ ์ ์ผ๋ก ์ง์์ ๋ชปํจ, ๋ช ์์ ์ผ๋ก ๊ตฌํ๋ ๋ฉค๋ฒ๋ช ๋๋ ํ ๋๋ ๋๊ตฌ๋ฅผ ๋ณธ์ ์ด ์์
์ด๊ฒ ๊ธฐ์ ์ ์ผ๋ก ๊ตฌํ์ด ์ด๋ ค์ด ์ด์ ๊ฐ ์๋๋ฐ ๋ช ์์ ์ผ๋ก ๊ตฌํ๋ ๋ฉค๋ฒ์ IL์ ๊น๋ณด๋ฉด ์๋ณธ ์ธํฐํ์ด์ค ํ์ ์ ๋ํ ๋ฉํ๋ฐ์ดํฐ๊ฐ ์ ํ ์์. ๋ฐํ์์ ๋ฉค๋ฒ๋ช ์์ ๋ถ์Type FullName์ผ๋ก๋ง ๋ฐ์ธ๋ฉ๋๊ธฐ๋๋ฌธ์ ๋๋ ํ ๋๊ตฌ ์ ์ฅ์์ ์๋ณธ ์ธํฐํ์ด์ค ํ์ ์ ์ฐพ๊ธฐ๊ฐ ๋งค์ฐ ๊น๋ค๋ก์
์ธํฐํ์ด์ค๋ง ํด๋นํจ?? ํด๋์ค.์ ๊ฐ๋??
ํด๋์ค๋ ๋ช ์์ ๊ตฌํ ๊ฐ๋ ์ด ์์
์ฐธ๊ณ ๋ก ๋ช ์์ ๊ตฌํ์ผ๋ก ๊ตฌํํ ๋ฉ์๋๋ฅผ ํฌํจํ ๊ฐ์ฒด๋ ํด๋น ์ธํฐํ์ด์ค๋ก ํ์ ์บ์คํ ํด์ฃผ๋ฉด ๊ทธ ๋ฉ์๋ ์ธ ์ ์์
IRead b = new B(); b.Read(); ์ด๋ ๊ฒํ๋ฉด Read ์ ๊ทผ์ด ๊ฐ๋ฅํด์ง ์ด๊ฑฐ ์์ฐ๋ฉด ํธํจ