์ธํฐํ์ด์ค๋ ๋ฉ์๋ ๋ฟ๋ง ์๋๋ผ ํ๋กํผํฐ์ ์ธ๋ฑ์๋ ๊ฐ์ง ์ ์๋ค.
ํ๋กํผํฐ๋ ์ธ๋ฑ์๋ฅผ ๊ฐ์ง ์ธํฐํ์ด์ค๋ฅผ ์์ํ๋ ํด๋์ค๊ฐ '๋ฐ๋์' ํด๋น ํ๋กํผํฐ์ ์ธ๋ฑ์๋ฅผ ๊ตฌํํด์ผ ํ๋ ๊ฒ์ ๋ฌผ๋ก ์ด๋ค.
(๋น์ฐํ ์ด์ผ๊ธฐ์ด์ง๋ง)์ธํฐํ์ด์ค์ ๋ค์ด๊ฐ๋ ํ๋กํผํฐ๋ ๊ตฌํ์ ๊ฐ์ง ์๋๋ค.
์ธํฐํ์ด์ค์ ํ๋กํผํฐ ์ ์ธ์ ํด๋์ค์ ์๋ ๊ตฌํ ํ๋กํผํฐ ์ ์ธ๊ณผ ๊ทธ ๋ชจ์ต์ด ๋์ผํ๋ค.
๋ค์์ ์ธํฐํ์ด์ค์ ํ๋กํผํฐ ์ ์ธ ํ์์ด๋ค.
interface ์ธํฐํ์ด์ค์ด๋ฆ
{
public ํ์ ํ๋กํผํฐ์ด๋ฆ1
{
get; set;
}
public ํ์ ํ๋กํผํฐ์ด๋ฆ2
{
get; set;
}
//...
}
๋ค์์ ํ๋กํผํฐ๋ฅผ ๊ฐ์ง ์ธํฐํ์ด์ค์ ์ด๋ฅผ ์์ํ๋ ํ์ ํด๋์ค์ ์์ด๋ค.
interface Iproduct
{
string ProductName
{
get;
set;
}
}
class Product : Iproduct
{
private string productName;
string ProductName
{
get;
set;
}
}
<์์ >
using System;
namespace PropertiesInterface
{
interface INamedValue
{
string Name { get; set; } //์๋ ๊ตฌํ ํ๋กํผํฐ์ฒ๋ผ ๊ตฌํ์ด ์์ง๋ง, C# ์ปดํ์ผ๋ฌ๋ ์ธํฐํ์ด์ค์ ํ๋กํผํฐ์ ๋ํด์๋
//์๋์ผ๋ก ๊ตฌํํด์ฃผ์ง ์๋๋ค. ์ด์ ๋... ์ธํฐํ์ด์ค๋ ์ด๋ค ๊ตฌํ๋ ๊ฐ์ง์ง ์๊ธฐ ๋๋ฌธ์ด๋ค!
string Value { get; set; }
}
class NamedValue : INamedValue
{
//INamedValue ์ธํฐํ์ด์ค๋ฅผ ์์ํ๋ NamedValue ํด๋์ค๋ ๋ฐ๋์
//Name๊ณผ Value๋ฅผ ๊ตฌํํด์ผํ๋ค.
//์ด๋ ์๋ ๊ตฌํ ํ๋กํผํฐ๋ฅผ ์ด์ฉํ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.
public string Name { get; set; }
public string Value { get; set; }
}
class MainApp
{
static void Main(string[] args)
{
NamedValue name = new NamedValue() { Name="์ด๋ฆ", Value="๋ฌด์ง๊ฐ์ฝ๋" };
NamedValue height = new NamedValue() { Name = "ํค", Value = "190cm" };
NamedValue weight = new NamedValue() { Name = "๋ฌด๊ฒ", Value = "88kg" };
Console.WriteLine($"{name.Name} : {name.Value}");
Console.WriteLine($"{height.Name} : {height.Value}");
Console.WriteLine($"{weight.Name} : {weight.Value}");
}
}
}
<์ถ๋ ฅ ๊ฒฐ๊ณผ>
์ด๋ฆ : ๋ฌด์ง๊ฐ์ฝ๋
ํค : 190cm
๋ฌด๊ฒ : 88kg
+
'C# > ์ด๊ฒ์ด C#์ด๋ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
46. ์ฑํฐ9 ์ฐ์ต๋ฌธ์ (0) | 2022.02.24 |
---|---|
45. ์ถ์ํด๋์ค์ ํ๋กํผํฐ (0) | 2022.02.24 |
43. ๋ฌด๋ช ํ์ (0) | 2022.02.23 |
42. [ํด๋์ค/๋ ์ฝ๋]๋ก ๋ถ๋ณ๊ฐ์ฒด ๊ตฌํํ๊ธฐ (0) | 2022.02.23 |
41. ํ๋กํผํฐ์ ์์ฑ์ (0) | 2022.02.22 |