카테고리 없음

C#_상수와 static

zelkova 2021. 2. 7. 11:37

<목차로 돌아가기>

 

상수

복잡한 프로그램을 만들게 될때, 수많은 변수들을 선언하여 코드를 작성하게 됩니다. 

그러나, 이 수많은 변수들 중 값이 도중에 변경되어도 프로그램엔 영향을 미치지 않는 것과 도중에 변경되면 심각한 오류를 일으킬 수 있는 것들이 있습니다. 

 

a = 1;을 쓰면 a에 1이 값이 들어간다는 것을 알게 될 겁니다.

만약 a에 1을 선언한뒤에 a에 2가 들어가지 않게 하려면 상수라는 것을 사용합니다.

 

C# 프로그래밍은 이 문제를 쉽게 해결해주는 const라는 상수지정 키워드가 존재합니다.

 

 

  1.  using System;
  2.  using System.Collections.Generic;
  3.  using System.Linq;
  4.  using System.Text;
  5.  using System.Threading.Tasks;
  6.  
  7.  namespace ConsoleApplication1
  8.  {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             const int a=0;
  14.             Console.WriteLine("a : ", a);
  15.         }
  16.     }
  17.  }

 

static

static 키워드를 한마디로 말하자면... "정리안하고 박제해 놓은 것." 

static 키워드로 붙은 것은 클래스에서 접근함

 

 직접실행해보는게 이해가 빠름.

 

  1.  using System;
  2.  using System.Collections.Generic;
  3.  using System.Linq;
  4.  using System.Text;
  5.  using System.Threading.Tasks;
  6.  
  7.  namespace ConsoleApplication1
  8.  {
  9.     class Class1
  10.     {
  11.         public static int Static_Int;
  12.         public int Instance_Int;
  13.  
  14.         static void Main()
  15.         {
  16.             Class2 cs = new Class2();
  17.             cs.Add();
  18.         }
  19.     }
  20.     class Class2
  21.     {
  22.         public void Add()
  23.         {
  24.             for (int i = 0; i < 10; i++)
  25.             {
  26.                 Class1 cs1 = new Class1();
  27.                 cs1.Instance_Int += 1;
  28.                 Class1.Static_Int += 10;
  29.                 Console.WriteLine("개체 변수는 클래스 변수는 ", 
  30.                                                  cs1.Instance_Int, Class1.Static_Int);
  31.             }
  32.         }
  33.     }
  34. }

 

 

 

결과)

 

static 변수는 객체가 생성될때마다 인스턴트(개체) 변수처럼 새로 생성되지 않고 

그대로 사용함.

 

 

 

반응형