컴퓨터프로그래밍/C#

C# - 메소드

zelkova 2016. 11. 22. 06:56

<목차로 돌아가기>


  메소드를 들어가기전에..



C#을 시작하고 나서 프로그램을 접할때 인터페이스? 클래스? 메소드? 


도대체 어떤 차이점이 있는거지? 라고 생각하면 머리를 쥐어짠 경험이 있었습니다.


갑자기 나온 용어에 어렵게 생각하지 않으셔도됩니다.


인터페이스 : 자동차

클래스 : 소형차, 중형차, 상용차(트럭)

메소드 :  시동걸다. 가속한다. 멈추다. 후진한다.


인터페이스안에 클래스가 포함되고 클래스안에 메소드가 포함된다는 것은 이해 하실겁니다.


※ C# 소스와 인터페이스는 같지 않습니다. C# != 인터페이스


자동차라는 인터페이스는 소형차, 중형차, 상용차의 공통적인 부분을 다루고


소형차 클래스는 공통적인 부분에 소형차의 내용을 추가하고

중형차 클래스는 공통적인 부분에 중형차의 내용을 추가하고

상용차 클래스는 공통적인 부분에 상용차의 내용을 추가합니다.


위에서 소형차클래스대로 완성된 소형차에 시동메소드를 장착합니다.

위에서 소형차클래스대로 완성된 소형차에 가속메소드를 장착합니다.

위에서 소형차클래스대로 완성된 소형차에 정지메소드를 장착합니다.

위에서 소형차클래스대로 완성된 소형차에 후진메소드를 장착합니다.


위에서 중형차클래스대로 완성된 소형차에 시동메소드를 장착합니다.

위에서 중형차클래스대로 완성된 소형차에 가속메소드를 장착합니다.

위에서 중형차클래스대로 완성된 소형차에 정지메소드를 장착합니다.

위에서 중형차클래스대로 완성된 소형차에 후진메소드를 장착합니다.


위에서 상용차클래스대로 완성된 소형차에 시동메소드를 장착합니다.

위에서 상용차클래스대로 완성된 소형차에 가속메소드를 장착합니다.

위에서 상용차클래스대로 완성된 소형차에 정지메소드를 장착합니다.

위에서 상용차클래스대로 완성된 소형차에 후진메소드를 장착합니다.


요렇게 이해하시면 조금 덜 했갈리죠.


조금 더 들어가면 약간 다른부분이 있지만 전체적인 맥락은 위와 같습니다.


그럼 우선 메소드부터 알아보도록 하겠습니다.




  메소드


메소드는 계산기와 같습니다.


정해진 숫자를 넣고 입력하면 그 결과값이 나오지요


아래는 숫자를 더하는 메소드 입니다.


static int sum(int a, int b)

{

     return a + b;

}


메소드의 구조는 다음과 같습니다.


접근지정자 반환형식 메소드명 (변수 리스트)

{

   //실행될 코드

  return

}


접근지정자 : 함수를 호출할 수 있는 범위를 지정합니다. 클래스와 같이 다루겠습니다.

리턴형 : 함수가 돌려주는 값의 형식을 지정합니다. 데이터형이 들어갑니다.

함수명 : 함수를 호출하는 이름입니다. 

변수리스트 : 함수가 호출될때 입력받는 값을 정의합니다.

return : 함수가 종료될때 되돌려주는 값으로 이 값은 없을수도 있습니다.


예제)

  1.  using System;
  2.  using System.Collections.Generic;
  3.  using System.Linq;
  4.  using System.Text;
  5.  using System.Threading.Tasks;

  6.  namespace ConsoleApplication
  7.  {
  8.     class Program
  9.     {
  10.         static int sum(int a, int b)
  11.         {
  12.             return a + b;
  13.         }
  14.         static void Main(string[] args)
  15.         {
  16.             Console.WriteLine(sum(1, 3));
  17.         }
  18.     }
  19.  }



결과)


17줄 : sum(1,3); 으로 sum 함수를 호출하고 1과 3을 sum 함수에 전달합니다.


11줄 : int 형으로 1과 3을 전달받습니다.


13줄 : 1과 3을 더한값을 호출한곳에 돌려줍니다.


17줄 : sum(1,3)의 결과값을 화면에 출력합니다.









반응형

'컴퓨터프로그래밍 > C#' 카테고리의 다른 글

C#_메소드_인자(변수)전달하기  (0) 2016.11.24
C# 변수의 범위  (0) 2016.11.22
C# - 배열  (2) 2016.11.21
C# - 점프문  (0) 2016.11.21
C# - 반복문  (0) 2016.11.20