메서드(Method) vs 함수(Function)의 차이

728x90
public static

 오늘 java에서 메서드 선언에 대해 배웠습니다. 여기에서 public은 다른 클래스에서 호출할 수 있는 메서드라는 뜻이고, static은 객체를 생성하지 않고 호출할 수 있는 정적 메서드라는 뜻입니다. 사실 아직 어떤 뜻들인지는 와닿지 않습니다. 근데 사용법을 보니 제가 최근에 배운 Javascript의 function(함수)와 비슷합니다. 의문이 들 때쯤 둘이 다른 종류라고 강의에서 알려줬습니다.

따라서 둘의 차이가 궁금해 찾아보았고, 이에 대해 모르더라도 글로 정리해놓으려 합니다.

 

 먼저 인터넷에 검색하여 찾아보았는데, Javascript메서드(Method)함수(Function)를 비교하고, 설명도 알아들을 수 없었습니다. 그래서 ChatGPT에게 물어보았습니다.

 

  • 함수 (Function):
    • 함수는 독립적으로 정의된 코드 블록으로, 특정 작업을 수행하기 위해 사용됩니다.
    • 객체 지향 프로그래밍이 아닌, 일반적인 프로그래밍 언어에서 주로 사용됩니다.
    • 함수는 클래스에 속하지 않으며, 단독으로 존재할 수 있습니다.
    • 예를 들어, Python의 def my_function()이나 JavaScript의 function myFunction()처럼 독립적으로 정의됩니다.
  • 메서드 (Method):
    • 메서드는 객체 지향 프로그래밍(OOP)에서 사용되는 개념으로, 클래스에 속하는 함수입니다.
    • 클래스의 인스턴스에 묶여 있으며, 해당 클래스의 데이터에 접근하고 조작하는 데 사용됩니다.
    • 객체에 특정 동작을 수행하도록 하기 위해 사용되며, 객체를 통해 호출됩니다.
    • 예를 들어, Python의 class 안에 정의된 함수는 메서드가 됩니다. Java에서도 클래스 안에 정의된 함수는 메서드로 불립니다.

 내용을 정리해보자면 함수는 독립적으로 쓰일 때 함수(Function)이라 불리고, 메서드는 class 내에서 정의되고, 객체를 통해 불러낼 수 있는 함수를 매서드(Method)라 불리는 것 같습니다.

 

728x90
반응형
LIST