250x250
Rainbow๐ŸŒˆCoder
My dev Note๐Ÿ“’
Rainbow๐ŸŒˆCoder
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (411)
    • ๊ณต์ง€์‚ฌํ•ญ (0)
    • Debugger (10)
      • Visual Studio Debugger (1)
      • Chrome DevTools (3)
      • Visual Studio Code Debugger (4)
      • eclipse (1)
      • intelliJ (1)
    • OOP (2)
      • OOP (2)
    • TypeScript (54)
      • ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ TypeScript (54)
    • Javascript (87)
      • Javascript (45)
      • Node.js (19)
      • React (5)
      • FE ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ค์ • (3)
      • React์™€ Node ๊ฐ™์ด ๋•Œ๋ ค์žก๊ธฐ (6)
      • next.js (2)
      • pixi.js (7)
    • ๋งˆํฌ์—… (23)
      • Html & Css (23)
    • C# (80)
      • C# (12)
      • ์ด๊ฒƒ์ด C#์ด๋‹ค (68)
    • C++ (30)
      • c++ (27)
      • win api (3)
    • Unity (18)
      • Unity(๊ธฐ์ดˆ) (8)
      • Unity(C#์ค‘๊ธ‰) (5)
      • ์œ ๋‹ˆํ‹ฐ ํฌํ†ค(๋„คํŠธ์›Œํฌ) (4)
      • unity c# MyCode (1)
    • Java & Spring (29)
      • Java (11)
      • ์Šคํ”„๋ง (8)
      • Java Algorithm (9)
      • Javs Data Structures (1)
    • ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (15)
      • ์ž๋ฃŒ๊ตฌ์กฐ (5)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (10)
    • ํ˜•์ƒ๊ด€๋ฆฌ (15)
      • Git (11)
      • ์†Œ์ŠคํŠธ๋ฆฌ (3)
    • ๊ทธ๋ž˜ํ”ฝ์Šค (7)
      • WebGl (7)
    • AWS (3)
      • aws (3)
    • ๋ฆฌ๋ˆ…์Šค (5)
      • ๋ฆฌ๋ˆ…์Šค (5)
    • ์ฑ… ๋ฆฌ๋ทฐ (13)
      • ํด๋ฆฐ์ฝ”๋“œ(์ฑ…๋ฆฌ๋ทฐ) (3)
      • ์œ ์ง€๋ณด์ˆ˜๊ฐ€๋Šฅํ•œ์ฝ”๋”ฉ์˜๊ธฐ์ˆ C#ํŽธ(์ฑ…๋ฆฌ๋ทฐ) (1)
      • ๋ฆฌํŒฉํ† ๋ง(์ž๋ฐ”์Šคํฌ๋ฆฝํŠธํŒ) (9)
    • Server (2)
      • ๊ฒŒ์ž„ ์„œ๋ฒ„(๋„คํŠธ์›Œํฌ, ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ,OS) (2)
    • ์„ค๊ณ„, ์•„ํ‚คํ…์ณ (4)
    • ํŒŒ์ด์ฌ (5)
    • ๋””์ž์ธํŒจํ„ด (2)
    • mocha (2)
    • Jest (1)
    • Spine (1)
    • ์ธ๊ณต์ง€๋Šฅ (1)
      • ํ˜ผ์ž๊ณต๋ถ€ํ•˜๋Š”๋จธ์‹ ๋Ÿฌ๋‹+๋”ฅ๋Ÿฌ๋‹ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

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

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์ปดํฌ์ง€์…˜
  • MySQL
  • ใ…ฃใ„ท
  • ์œ„์ž„

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
Rainbow๐ŸŒˆCoder

My dev Note๐Ÿ“’

39. ํ”„๋กœํผํ‹ฐ ๊ธฐ๋ณธํ˜• ์„ ์–ธ
C#/์ด๊ฒƒ์ด C#์ด๋‹ค

39. ํ”„๋กœํผํ‹ฐ ๊ธฐ๋ณธํ˜• ์„ ์–ธ

2022. 2. 22. 17:57
728x90

 

https://youtu.be/QXakJJHkz8k ์ฐธ ๊ณ  ์˜ ์ƒ 

 

๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด๋ผ๋ฉด '์€๋‹‰์„ฑ'์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

๊ฐ์ฒด์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์˜๋„ํ•˜์ง€ ์•Š๊ฒŒ ์˜ค์—ผ๋˜๋Š” ๊ฒƒ์„ ๋ง‰์•„์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

C++์ด๋‚˜ Java์—์„œ๋Š” private๋‚˜ protected ์ ‘๊ทผ ํ•œ์ •์ž๋ฅผ ์ด์šฉํ•ด์„œ ํด๋ž˜์Šค ๋‚ด์˜ ํ•„๋“œ๋ฅผ ์™ธ๋ถ€์—์„œ ๋ณด์ด์ง€ ์•Š๊ฒŒ ๊ฐ์ถ”๊ณ ,

์ด ํ•„๋“œ์— ์ ‘๊ทผํ•˜๋Š” ๋ฉ”์†Œ๋“œ๋“ค์„ public์œผ๋กœ ๋”ฐ๋กœ ์ œ๊ณตํ•œ๋‹ค.

 

C# ํ”„๋กœ๊ทธ๋ž˜๋จธ๋„ ์ด ๋ฐฉ๋ฒ•์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋”๋Ÿฌ,

๋” ์šฐ์•„ํ•œ ์žฅ์น˜๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

๋ฐ”๋กœ 'ํ”„๋กœํผํ‹ฐ'์ด๋‹ค.

 

ํ”„๋กœํผํ‹ฐ๋ฅผ ์ด์šฉํ•˜๋ฉด ์€๋‹‰์„ฑ๊ณผ ํŽธ์˜์„ฑ, ๋‘ ๋งˆ๋ฆฌ ํ† ๋ผ๋ฅผ ๋‹ค ์žก์„ ์ˆ˜ ์žˆ๋‹ค.

์•„๋ž˜์™€ ๊ฐ™์€ ํ•„๋“œ๊ฐ€ ์žˆ์œผ๋ฉด

class MyClass
{
     private int myField;
}

Java์—์„œ๋Š” get/set ๋ฉ”์†Œ๋“œ๋ฅผ ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•  ๊ฒƒ์ด๊ณ 

class MyClass
{
     private int myField;
     public int GetMyField(){return myField;}
     public void SetMyField(int NewValue){myField = NewValue;}
}

ํด๋ž˜์Šค์˜ ๊ฐ์ฒด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋‹ค.

MyClass obj = new MyClass();
obj.SetMyField(3);
Console.WriteLine(obj.GetMytField());

ํ•˜์ง€๋งŒ ๋‚˜๋Š” C#์„ ๋‹ค๋ฃจ๋ฏ€๋กœ Get/Set ๋ฉ”์†Œ๋“œ๋ณด๋‹จ ํ”„๋กœํผํ‹ฐ ^^

class ํด๋ž˜์Šค์ด๋ฆ„

{

     ๋ฐ์ดํ„ฐํ˜•์‹ ํ•„๋“œ์ด๋ฆ„;

     ์ ‘๊ทผํ•œ์ •์ž ๋ฐ์ดํ„ฐํ˜•์‹ ํ”„๋กœํผํ‹ฐ์ด๋ฆ„

     {

          get

          {

               return ํ•„๋“œ์ด๋ฆ„;

          }

 

          set

          {

               ํ•„๋“œ์ด๋ฆ„ = value;

          }

     }

}

value๋Š” ํ”„๋กœํผํ‹ฐ ๋ฐ์ดํ„ฐํ˜•์‹(ํ•„๋“œ์˜ ๋ฐ์ดํ„ฐํ˜•์‹๊ณผ ๋™์ผํ•ด์•ผํ•จ!!!)๊ณผ ๋ฐ์ดํ„ฐํ˜•์‹์ด ๋™์ผํ•œ... ํ˜•์„ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค!

<์ž๋ฐ”์™€ C# ๋น„๊ต>

์ž๋ฐ”

class MyClass
{
     private int myField;
     public int GetMyField(){return myField;}
     public void SetMyField(int NewValue){myField = NewValue;}
}

C# (๊ทธ์•ผ๋ง๋กœ ์šฐ์•„ํ•จ์˜ ๊ทน์น˜๋ฅผ ๋‹ฌ๋ฆฐ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค-...(์ •๋ง?))

class ํด๋ž˜์Šค์ด๋ฆ„
{
     ๋ฐ์ดํ„ฐํ˜•์‹ ํ•„๋“œ์ด๋ฆ„;
     ์ ‘๊ทผํ•œ์ •์ž ๋ฐ์ดํ„ฐํ˜•์‹ ํ”„๋กœํผํ‹ฐ์ด๋ฆ„
     {
          get{return ํ•„๋“œ์ด๋ฆ„;}
          set{ํ•„๋“œ์ด๋ฆ„ = value;}
     }
}

<์ฝ๊ธฐ ์ „์šฉ :  ํ”„๋กœํผํ‹ฐ๋ฅผ ํ†ตํ•ด ํ•„๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ์ƒํƒœ ,์ฆ‰ ์ฝ๊ธฐ ์ „์šฉ ํ”„๋กœํผํ‹ฐ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด

set ์ ‘๊ทผ์ž๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ์•Š์œผ๋ฉด ๋œ๋‹ค.>

get ์ ‘๊ทผ์ž๋Š” ํ•„๋“œ๋กœ๋ถ€ํ„ฐ ๊ฐ’์„ ์ฝ์–ด์˜ค๊ณ  set ์ ‘๊ทผ์ž๋Š” ํ•„๋“œ์— ๊ฐ’์„ ํ• ๋‹นํ•œ๋‹ค.

set ์ ‘๊ทผ์ž ์•ˆ์— ์žˆ๋Š” value ํ‚ค์›Œ๋“œ๋Š” ๊ทธ ๋ˆ„๊ตฌ๋„ ์„ ์–ธํ•œ ์ ์ด ์—†์ง€๋งŒ,

C# ์ปดํŒŒ์ผ๋Ÿฌ๋Š” set ์ ‘๊ทผ์ž์˜ ์•”๋ฌต์  ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๊ฐ„์ฃผํ•˜๋ฏ€๋กœ ์ „ํ˜€ ๋ฌธ์ œ ์‚ผ์ง€ ์•Š ๋Š” ๋‹ค ! 

 

์ฆ‰ java์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ฒ˜๋ฆฌํ–ˆ๋˜ ๋ถ€๋ถ„์ด

MyClass obj = new MyClass();
obj.SetMyField(3);
Console.WriteLine(obj.GetMytField());

C#์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ฒ˜๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

MtClasss obj = new MyClass();
obj.MyField = 3;
Console.WriteLine(obj.MyField);

<์˜ˆ์ œ>

using System;

namespace Property
{
    class BirthdayInfo
    {
        private string name;
        private DateTime birthday;
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }

        public DateTime Birthday
        {
            get
            {
                return birthday;
            }
            set
            {
                birthday = value;
            }
        }

        public int Age
        {
            get
            {
                return new DateTime(DateTime.Now.Subtract(birthday).Ticks).Year;
            }
        }

    }

    class MainApp
    {
        static void Main(string[] args)
        {
            BirthdayInfo birth = new BirthdayInfo();
            birth.Name = "์„œ์ฃผํ˜„";
            birth.Birthday = new DateTime(1996,04,12);

            Console.WriteLine($"Name:{birth.Name}");
            Console.WriteLine($"Birthday:{birth.Birthday}");
            Console.WriteLine($"Birthday:{birth.Birthday.ToShortDateString()}");
            Console.WriteLine($"Age:{birth.Age}");
        }
    }
}

<์ถœ๋ ฅ ๊ฒฐ๊ณผ>

Name:์„œ์ฃผํ˜„
Birthday:1996-04-12 ์˜ค์ „ 12:00:00
Birthday:1996-04-12
Age:26

728x90

'C# > ์ด๊ฒƒ์ด C#์ด๋‹ค' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

41. ํ”„๋กœํผํ‹ฐ์™€ ์ƒ์„ฑ์ž  (0) 2022.02.22
40. ์ž๋™ ๊ตฌํ˜„ ํ”„๋กœํผํ‹ฐ  (0) 2022.02.22
36. ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ธฐ๋ณธ ๊ตฌํ˜„ ๋ฉ”์„œ๋“œ  (0) 2022.02.22
38. ์ธํ„ฐํŽ˜์ด์Šค ์˜ˆ์ œ1, 2 ๋ณต์Šต  (0) 2022.02.22
37. ์ถ”์ƒํด๋ž˜์Šค : ์ธํ„ฐํŽ˜์ด์Šค์™€ ํด๋ž˜์Šค ์‚ฌ์ด  (0) 2022.02.22
    'C#/์ด๊ฒƒ์ด C#์ด๋‹ค' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • 41. ํ”„๋กœํผํ‹ฐ์™€ ์ƒ์„ฑ์ž
    • 40. ์ž๋™ ๊ตฌํ˜„ ํ”„๋กœํผํ‹ฐ
    • 36. ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ธฐ๋ณธ ๊ตฌํ˜„ ๋ฉ”์„œ๋“œ
    • 38. ์ธํ„ฐํŽ˜์ด์Šค ์˜ˆ์ œ1, 2 ๋ณต์Šต
    Rainbow๐ŸŒˆCoder
    Rainbow๐ŸŒˆCoder
    ๋ชฐ๋ผ๋„ ๊ฒฐ๊ตญ์€ ์•„๋Š” ๊ฐœ๋ฐœ์ž, ๊ทธ๋Ÿฐ ์‚ฌ๋žŒ์ด ๋˜๊ธฐ ์œ„ํ•œ ๋งค์ผ์˜ ํ•œ๊ฑธ์Œ

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