함수와 메소드의 차이점

고은찬·2021년 4월 5일
1

기초공부

목록 보기
1/2

함수(Function)와 메소드(Method)의 차이점

JAVA(안드로이드), JS, PHP 를 주로 하다 보니 함수라는 용어를 쓰다가 메소드를 만났을때, 메소드라는 용어를 쓰다가 함수라는 용어를 만났을 때 이해없이 단어들을 사용하고 있었다.
그래서 이 둘의 차이점을 정리해본다.


함수란?

함수는 특정 작업을 수행하는 "코드 조각"이다.
범위가 전역이든 지역이든 "독립된 기능"을 수행하는 단위이다.
로직 처리 이후 사용자가 원하는 결과를 반환(return)한다.
즉 함수는 독립적으로 존재한다.

//독립적으로 존재한다.
function plus(int a, int b) {
	retrun a+b;
}


메소드란?

메소드는 클래스, 구조체, 열거형에 포함되어 있는 함수를 메소드라고 한다.
다른말로 "클래스 함수" 라고도 불린다.
해당 클래스에 대한 객체가 생성되어야 사용할 수 있다. ( 클래스 안에 있으니까 )


class Person { 
  //This is a method which acts only on Person type 
 	func personGreeting() { 
      greet(yourName: "Santosh", category: .Person)
    }
}

안드로이드(JAVA) 같은 경우 액티비티 클래스 안에 모든 것을 작성하게 된다.
클래스 안에 작성되는 "함수" 는 "메소드" 가 되는 것이다.

이런 사소한(?) 단어들의 뜻도 하나하나 정확히 알고 넘어가자!

profile
연애하는 개발자

1개의 댓글

comment-user-thumbnail
2022년 11월 6일

정보 공유 감사합니다.
의문이 드는 건, 본문에 정의하신 함수라 하면은 static을 붙여서 전역으로 써도 될 것처럼 보여지네요.
그래서 전역 함수인지 아닌지의 차이처럼 느껴집니다.
혹시 펑션과 메소드의 차이점 출처가 어딘지도 알 수 있을까요?

답글 달기