17. ํ”„๋กœํผํ‹ฐ(Property)์˜ ์ดํ•ด

2022. 4. 7. 09:26ยท๐Ÿ’ป Programming Language/C#
namespace PropertyEx
{
    //ํ”„๋กœํผํ‹ฐ 

    class DemoClass
    {
        private int demoField;
        public int getDemoField()
        {
            return demoField;
        }
        public void setDemoField(int demoField)
        {
            this.demoField = demoField;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            DemoClass demoClass = new DemoClass();
            demoClass.setDemoField(100);
            Console.WriteLine(demoClass.getDemoField());
        }
    }
}

  • ๋ณดํ†ต Java๋‚˜ ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด ์—์„œ ์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ getter & setter ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.

  • ํ•˜์ง€๋งŒ C# ์—์„œ๋Š” ์•ฝ๊ฐ„ ๋‹ค๋ฅด๊ฒŒ ์‚ฌ์šฉํ•œ๋‹ค. (ํ”„๋กœํผํ‹ฐ(property)๋ฅผ ์‚ฌ์šฉ)

ํ”„๋กœํผํ‹ฐ


##### ํ”„๋กœํผํ‹ฐ ์„ ์–ธ ํ˜•์‹ ```csharp

๋ฐ์ดํ„ฐํƒ€์ž… ํ•„๋“œ๋ช…;

์ ‘๊ทผ์ œํ•œ์ž ๋ฐ์ดํ„ฐํƒ€์ž… ํ”„๋กœํผํ‹ฐ๋ช…

{
get
{
return ํ•„๋“œ๋ช…;
}

set
{
    ํ•„๋“œ๋ช… = value; //ํ‚ค์›Œ๋“œ
}

}


<br />

- ์ด๋•Œ `value`๋Š” `๋ณ€์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ C#์— ๋‚ด์žฅ๋˜์–ด ์žˆ๋Š” ํ‚ค์›Œ๋“œ์ž„!!!`

<br />

- `get, set`์€ `์ ‘๊ทผ์ž(Accessor)`์ด๋‹ค.

<br />

```csharp
namespace PropertyEx
{

    class DemoClass
    {
        private int demoField;

        public int DemoField //ํ•„๋“œ๋ฅผ ์ด์šฉํ•  ๊ฑฐ๋ผ๋ฉด ํ•„๋“œ์™€ ์ด๋ฆ„์ด ๋น„์Šทํ•˜๊ฒŒ ์„ ์–ธ
        {
            get 
            { 
                return demoField; 
            }

            set 
            { 
                demoField = value; 
            }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            DemoClass demoClass = new DemoClass();
            demoClass.DemoField = 100; // ์ด ์ฝ”๋“œ๊ฐ€ ํ”„๋กœํผํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž„ => ์ž๋™์œผ๋กœ set
            Console.WriteLine(demoClass.DemoField); //=> ์ž๋™์œผ๋กœ get
        }
    }
}
Output

100
  • ํ”„๋กœํผํ‹ฐ๋ฅผ ์ฝ๊ธฐ์ „์šฉ(get ์ ‘๊ทผ์ž๋งŒ ๊ตฌํ˜„ํ–ˆ์„ ๋•Œ) ์“ฐ๊ธฐ์ „์šฉ(set ์ ‘๊ทผ์ž๋งŒ ๊ตฌํ˜„ํ–ˆ์„ ๋•Œ)์œผ๋กœ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

'๐Ÿ’ป Programming Language > C#' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

19. ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์ž๋™ ํ”„๋กœํผํ‹ฐ ์‚ฌ์šฉ๋ฒ•  (0) 2022.04.07
18. C# 7.0์—์„œ ์ž๋™ ํ”„๋กœํผํ‹ฐ ์‚ฌ์šฉ๋ฒ•  (0) 2022.04.07
16. ์ถ”์ƒํด๋ž˜์Šค(Abstract Class) ์ดํ•ด  (0) 2022.04.06
15. ์ธํ„ฐํŽ˜์ด์Šค(Interface) ์ดํ•ด  (0) 2022.04.06
14. ํ™•์žฅ ๋ฉ”์†Œ๋“œ  (0) 2022.04.06
'๐Ÿ’ป Programming Language/C#' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • 19. ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์ž๋™ ํ”„๋กœํผํ‹ฐ ์‚ฌ์šฉ๋ฒ•
  • 18. C# 7.0์—์„œ ์ž๋™ ํ”„๋กœํผํ‹ฐ ์‚ฌ์šฉ๋ฒ•
  • 16. ์ถ”์ƒํด๋ž˜์Šค(Abstract Class) ์ดํ•ด
  • 15. ์ธํ„ฐํŽ˜์ด์Šค(Interface) ์ดํ•ด
S.Honey
S.Honey
  • S.Honey
    Algo ์“ฐ์ž
    S.Honey
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (123)
      • ํšŒ๊ณ  (0)
        • ์ทจ์—… ํ›„ ํšŒ๊ณ  (0)
      • ๐Ÿƒ Frontend Road-Map (2)
        • ๐Ÿšฉ Summary (1)
        • ๐Ÿ“š Road-Map Contents (1)
        • ๐ŸŸง HTML (0)
        • ๐ŸŸฆ CSS (0)
        • ๐ŸŸจ Javascript (0)
        • โฌœ React (0)
        • ๐ŸŸช Redux (0)
      • Backend (0)
        • QueryDSL (0)
      • ๐Ÿ’ป Programming Language (54)
        • C# (51)
        • Flutter-Dart (3)
        • Java (0)
      • ๐Ÿ“š Computer Science (4)
        • Algorithms (4)
        • Database (0)
        • Network (0)
        • Operating System(OS) (0)
      • ๐Ÿ’ฏ CodingTest (60)
        • BaekJoon (22)
        • Programmers (34)
        • CodeTree (4)
      • โœ’๏ธ Design Pattern (1)
      • ๐Ÿฑ Etc (2)
        • Jenkins Plugin ์ œ์ž‘๊ธฐ (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๋งํฌ

    • ๊ณต์ง€์‚ฌํ•ญ

      • ๐Ÿ“– ๊ณต๋ถ€ ์ฐธ๊ณ  ๊ต์žฌ ๋ฐ ์ž๋ฃŒ
    • ์ธ๊ธฐ ๊ธ€

    • ํƒœ๊ทธ

      ํŒŒ์ด์ฌ
      JS
      ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
      BAEKJOON
      ์ฝ”๋“œํŠธ๋ฆฌ
      ๋ฌธ์ž์—ด ํŒŒ์‹ฑ
      BFS
      Flutter
      ์“ฐ์…จ์ž–์•„
      DART
      ์นด์นด์˜ค
      ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
      ์Šคํ„ฐ๋””
      c#
      ์•Œ๊ณ ๋ฆฌ์ฆ˜
      ๋ฐฑ์ค€
      Java
      ์ž๋ฃŒ๊ตฌ์กฐ
      sort
      ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰
      JavaScript
      DP
      ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
      ์‹œ๋ฎฌ๋ ˆ์ด์…˜
      Algorithm
      ๋™์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      ์‚ผ์„ฑsw์—ญํ…Œ
      ์ด์ง„ํƒ์ƒ‰
      programmers
      ๊ตฌํ˜„
    • ์ตœ๊ทผ ๋Œ“๊ธ€

    • ์ตœ๊ทผ ๊ธ€

    • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.1
    S.Honey
    17. ํ”„๋กœํผํ‹ฐ(Property)์˜ ์ดํ•ด
    ์ƒ๋‹จ์œผ๋กœ

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”